@@ -374,7 +374,9 @@ may be changed from ``.``, and the package will be installed into a
374
374
subdirectory. By default, the subdirectory is named the same as the package,
375
375
and without the ``-ExcludeVersion `` option this name will include the specific
376
376
version installed. Inside the subdirectory is a ``tools `` directory that
377
- contains the Python installation::
377
+ contains the Python installation:
378
+
379
+ .. code-block :: doscon
378
380
379
381
# Without -ExcludeVersion
380
382
> .\python.3.5.2\tools\python.exe -V
@@ -421,7 +423,7 @@ dependants, such as Idle), pip and the Python documentation are not included.
421
423
.. note ::
422
424
423
425
The embedded distribution does not include the `Microsoft C Runtime
424
- <https://www .microsoft.com/en-us/download/details.aspx?id=48145 > `_ and it is
426
+ <https://docs .microsoft.com/en-US/cpp/windows/latest-supported-vc-redist#visual-studio-2015-2017-2019-and-2022 > `_ and it is
425
427
the responsibility of the application installer to provide this. The
426
428
runtime may have already been installed on a user's system previously or
427
429
automatically via Windows Update, and can be detected by finding
@@ -555,27 +557,22 @@ System variables, you need non-restricted access to your machine
555
557
Windows will concatenate User variables *after * System variables, which may
556
558
cause unexpected results when modifying :envvar: `PATH `.
557
559
558
- The :envvar: `PYTHONPATH ` variable is used by all versions of Python 2 and
559
- Python 3, so you should not permanently configure this variable unless it
560
- only includes code that is compatible with all of your installed Python
560
+ The :envvar: `PYTHONPATH ` variable is used by all versions of Python,
561
+ so you should not permanently configure it unless the listed paths
562
+ only include code that is compatible with all of your installed Python
561
563
versions.
562
564
563
565
.. seealso ::
564
566
565
- https://www.microsoft.com/en-us/wdsi/help/folder-variables
566
- Environment variables in Windows NT
567
-
568
- https://technet.microsoft.com/en-us/library/cc754250.aspx
569
- The SET command, for temporarily modifying environment variables
567
+ https://docs.microsoft.com/en-us/windows/win32/procthread/environment-variables
568
+ Overview of environment variables on Windows
570
569
571
- https://technet .microsoft.com/en-us/library/cc755104.aspx
572
- The SETX command, for permanently modifying environment variables
570
+ https://docs .microsoft.com/en-us/windows-server/administration/windows-commands/set_1
571
+ The `` set `` command, for temporarily modifying environment variables
573
572
574
- https://support .microsoft.com/en-us/help/310519/how-to-manage-environment-variables-in- windows-xp
575
- How To Manage Environment Variables in Windows XP
573
+ https://docs .microsoft.com/en-us/windows-server/administration/ windows-commands/setx
574
+ The `` setx `` command, for permanently modifying environment variables
576
575
577
- https://www.chem.gla.ac.uk/~louis/software/faq/q1.html
578
- Setting Environment variables, Louis J. Farrugia
579
576
580
577
.. _windows-path-mod :
581
578
@@ -673,48 +670,40 @@ From the command-line
673
670
System-wide installations of Python 3.3 and later will put the launcher on your
674
671
:envvar: `PATH `. The launcher is compatible with all available versions of
675
672
Python, so it does not matter which version is installed. To check that the
676
- launcher is available, execute the following command in Command Prompt:
677
-
678
- ::
673
+ launcher is available, execute the following command in Command Prompt::
679
674
680
675
py
681
676
682
677
You should find that the latest version of Python you have installed is
683
678
started - it can be exited as normal, and any additional command-line
684
679
arguments specified will be sent directly to Python.
685
680
686
- If you have multiple versions of Python installed (e.g., 2.7 and |version |) you
687
- will have noticed that Python |version | was started - to launch Python 2.7, try
688
- the command:
689
-
690
- ::
691
-
692
- py -2.7
681
+ If you have multiple versions of Python installed (e.g., 3.7 and |version |) you
682
+ will have noticed that Python |version | was started - to launch Python 3.7, try
683
+ the command::
693
684
694
- If you want the latest version of Python 2.x you have installed, try the
695
- command:
685
+ py -3.7
696
686
697
- ::
687
+ If you want the latest version of Python 2 you have installed, try the
688
+ command::
698
689
699
690
py -2
700
691
701
- You should find the latest version of Python 2 .x starts.
692
+ You should find the latest version of Python 3 .x starts.
702
693
703
- If you see the following error, you do not have the launcher installed:
704
-
705
- ::
694
+ If you see the following error, you do not have the launcher installed::
706
695
707
696
'py' is not recognized as an internal or external command,
708
697
operable program or batch file.
709
698
710
699
Per-user installations of Python do not add the launcher to :envvar: `PATH `
711
700
unless the option was selected on installation.
712
701
713
- ::
702
+ The command ::
714
703
715
704
py --list
716
705
717
- You should see the currently installed versions of Python.
706
+ displays the currently installed version(s) of Python.
718
707
719
708
Virtual environments
720
709
^^^^^^^^^^^^^^^^^^^^
@@ -740,9 +729,7 @@ following contents
740
729
import sys
741
730
sys.stdout.write(" hello from Python %s \n " % (sys.version,))
742
731
743
- From the directory in which hello.py lives, execute the command:
744
-
745
- ::
732
+ From the directory in which hello.py lives, execute the command::
746
733
747
734
py hello.py
748
735
@@ -755,9 +742,9 @@ is printed. Now try changing the first line to be:
755
742
756
743
Re-executing the command should now print the latest Python 3.x information.
757
744
As with the above command-line examples, you can specify a more explicit
758
- version qualifier. Assuming you have Python 2.6 installed, try changing the
759
- first line to ``#! python2.6 `` and you should find the 2.6 version
760
- information printed.
745
+ version qualifier. Assuming you have Python 3.7 installed, try changing
746
+ the first line to ``#! python3.7 `` and you should find the | version |
747
+ version information printed.
761
748
762
749
Note that unlike interactive use, a bare "python" will use the latest
763
750
version of Python 2.x that you have installed. This is for backward
@@ -810,8 +797,8 @@ shebang lines starting with ``/usr``.
810
797
Any of the above virtual commands can be suffixed with an explicit version
811
798
(either just the major version, or the major and minor version).
812
799
Furthermore the 32-bit version can be requested by adding "-32" after the
813
- minor version. I.e. ``/usr/bin/python2 .7-32 `` will request usage of the
814
- 32-bit python 2 .7.
800
+ minor version. I.e. ``/usr/bin/python3 .7-32 `` will request usage of the
801
+ 32-bit python 3 .7.
815
802
816
803
.. versionadded :: 3.7
817
804
@@ -897,19 +884,19 @@ Examples:
897
884
``python2 `` will use the latest Python 2.x version installed and
898
885
the command ``python3 `` will use the latest Python 3.x installed.
899
886
900
- * The commands ``python3.1 `` and `` python2 .7 `` will not consult any
887
+ * The command ``python3.7 `` will not consult any
901
888
options at all as the versions are fully specified.
902
889
903
890
* If ``PY_PYTHON=3 ``, the commands ``python `` and ``python3 `` will both use
904
891
the latest installed Python 3 version.
905
892
906
- * If ``PY_PYTHON=3.1 -32 ``, the command ``python `` will use the 32-bit
907
- implementation of 3.1 whereas the command ``python3 `` will use the latest
893
+ * If ``PY_PYTHON=3.7 -32 ``, the command ``python `` will use the 32-bit
894
+ implementation of 3.7 whereas the command ``python3 `` will use the latest
908
895
installed Python (PY_PYTHON was not considered at all as a major
909
896
version was specified.)
910
897
911
- * If ``PY_PYTHON=3 `` and ``PY_PYTHON3=3.1 ``, the commands
912
- ``python `` and ``python3 `` will both use specifically 3.1
898
+ * If ``PY_PYTHON=3 `` and ``PY_PYTHON3=3.7 ``, the commands
899
+ ``python `` and ``python3 `` will both use specifically 3.7
913
900
914
901
In addition to environment variables, the same settings can be configured
915
902
in the .INI file used by the launcher. The section in the INI file is
@@ -920,21 +907,21 @@ an environment variable will override things specified in the INI file.
920
907
921
908
For example:
922
909
923
- * Setting ``PY_PYTHON=3.1 `` is equivalent to the INI file containing:
910
+ * Setting ``PY_PYTHON=3.7 `` is equivalent to the INI file containing:
924
911
925
912
.. code-block :: ini
926
913
927
914
[defaults]
928
- python =3.1
915
+ python =3.7
929
916
930
- * Setting ``PY_PYTHON=3 `` and ``PY_PYTHON3=3.1 `` is equivalent to the INI file
917
+ * Setting ``PY_PYTHON=3 `` and ``PY_PYTHON3=3.7 `` is equivalent to the INI file
931
918
containing:
932
919
933
920
.. code-block :: ini
934
921
935
922
[defaults]
936
923
python =3
937
- python3 =3.1
924
+ python3 =3.7
938
925
939
926
Diagnostics
940
927
-----------
@@ -1088,13 +1075,14 @@ is a collection of modules for advanced Windows-specific support. This includes
1088
1075
utilities for:
1089
1076
1090
1077
* `Component Object Model
1091
- <https://docs.microsoft.com/en-us/windows/desktop /com/component-object-model--com--portal> `_
1078
+ <https://docs.microsoft.com/en-us/windows/win32 /com/component-object-model--com--portal> `_
1092
1079
(COM)
1093
1080
* Win32 API calls
1094
1081
* Registry
1095
1082
* Event log
1096
- * `Microsoft Foundation Classes <https://msdn.microsoft.com/en-us/library/fe1cf721%28VS.80%29.aspx >`_ (MFC)
1097
- user interfaces
1083
+ * `Microsoft Foundation Classes
1084
+ <https://docs.microsoft.com/en-us/cpp/mfc/mfc-desktop-applications> `_
1085
+ (MFC) user interfaces
1098
1086
1099
1087
`PythonWin <https://web.archive.org/web/20060524042422/
1100
1088
https://www.python.org/windows/pythonwin/> `_ is a sample MFC application
@@ -1105,7 +1093,7 @@ shipped with PyWin32. It is an embeddable IDE with a built-in debugger.
1105
1093
`Win32 How Do I...? <http://timgolden.me.uk/python/win32_how_do_i.html >`_
1106
1094
by Tim Golden
1107
1095
1108
- `Python and COM <http ://www.boddie.org.uk/python/COM.html >`_
1096
+ `Python and COM <https ://www.boddie.org.uk/python/COM.html >`_
1109
1097
by David and Paul Boddie
1110
1098
1111
1099
@@ -1119,18 +1107,6 @@ you can distribute your application without requiring your users to install
1119
1107
Python.
1120
1108
1121
1109
1122
- WConio
1123
- ------
1124
-
1125
- Since Python's advanced terminal handling layer, :mod: `curses `, is restricted to
1126
- Unix-like systems, there is a library exclusive to Windows as well: Windows
1127
- Console I/O for Python.
1128
-
1129
- `WConio <http://newcenturycomputers.net/projects/wconio.html >`_ is a wrapper for
1130
- Turbo-C's :file: `CONIO.H `, used to create text user interfaces.
1131
-
1132
-
1133
-
1134
1110
Compiling Python on Windows
1135
1111
===========================
1136
1112
@@ -1140,21 +1116,13 @@ latest release's source or just grab a fresh `checkout
1140
1116
<https://devguide.python.org/setup/#getting-the-source-code> `_.
1141
1117
1142
1118
The source tree contains a build solution and project files for Microsoft
1143
- Visual Studio 2015 , which is the compiler used to build the official Python
1119
+ Visual Studio, which is the compiler used to build the official Python
1144
1120
releases. These files are in the :file: `PCbuild ` directory.
1145
1121
1146
1122
Check :file: `PCbuild/readme.txt ` for general information on the build process.
1147
1123
1148
-
1149
1124
For extension modules, consult :ref: `building-on-windows `.
1150
1125
1151
- .. seealso ::
1152
-
1153
- `Python + Windows + distutils + SWIG + gcc MinGW <http://sebsauvage.net/python/mingw.html >`_
1154
- or "Creating Python extensions in C/C++ with SWIG and compiling them with
1155
- MinGW gcc under Windows" or "Installing Python extension with distutils
1156
- and without Microsoft Visual C++" by Sébastien Sauvage, 2003
1157
-
1158
1126
1159
1127
Other Platforms
1160
1128
===============
@@ -1163,12 +1131,12 @@ With ongoing development of Python, some platforms that used to be supported
1163
1131
earlier are no longer supported (due to the lack of users or developers).
1164
1132
Check :pep: `11 ` for details on all unsupported platforms.
1165
1133
1166
- * `Windows CE <http://pythonce.sourceforge.net/ >`_ is still supported.
1167
- * The ` Cygwin <https://cygwin .com/ >`_ installer offers to install the Python
1168
- interpreter as well (cf. ` Cygwin package source
1169
- <ftp ://ftp.uni-erlangen.de/pub/pc/gnuwin32/cygwin/mirrors/cygnus/
1170
- release/python> `_, ` Maintainer releases
1171
- <http://www.tishler.net/jason/software/python/> `_)
1134
+ * `Windows CE <http://pythonce.sourceforge.net/ >`_ is
1135
+ ` no longer supported <https://github .com/python/cpython/issues/71542 >`__
1136
+ since Python 3 (if it ever was).
1137
+ * The ` Cygwin < https ://cygwin.com/ >`_ installer offers to install the
1138
+ ` Python interpreter < https://cygwin.com/packages/summary/python3.html >`__
1139
+ as well
1172
1140
1173
1141
See `Python for Windows <https://www.python.org/downloads/windows/ >`_
1174
1142
for detailed information about platforms with pre-compiled installers.
0 commit comments