title: What is the meaning of 'cp3xm' and 'cp2xm' in the name of Python wheels?
body: <p>To my knowledge, the naming rules of python wheel is </p>
  
  <pre><code>package_version-related_python_version-none-32bits_or_64bits.whl
  </code></pre>
  
  <p>For example,</p>
  
  <pre><code>numpy‑1.11.2+mkl‑cp35‑none‑win_amd64.whl
  </code></pre>
  
  <p>is numpy of version 1.11.2 for Python3.5 running in windows 64 bits platform.
  <a href="https://stackoverflow.com/questions/37023557/what-does-version-name-cp27-or-cp35-mean-in-python">Reference</a></p>
  
  <p>Currently i have noticed the naming of Python packages in <a href="http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy" rel="noreferrer">Unofficial Windows Binaries for Python Extension Packages</a> use 'cpxxm' to replace 'none'. For example,</p>
  
  <pre><code>numpy‑1.11.2+mkl‑cp35‑cp35m‑win_amd64.whl
  </code></pre>
  
  <p>When installing these packages, pip will return version unmatch error. When i change 'cp35m' to 'none', it becomes normal.</p>
  
  <p>So, what is the meaning of 'cp2xm' 'cp3xm' and why suddenly all the package replace 'none' with 'cpxxm'?</p>