Print the Python version number and exit. Example output could be::
- Python 3.0
+ Python 3.6.0b2+
+
+ When given twice, print more information about the build, like::
+
+ Python 3.6.0b2+ (3.6:84a3c5003510+, Oct 26 2016, 02:33:55)
+ [GCC 6.2.0 20161005]
.. _using-on-misc-options:
def test_version(self):
version = ('Python %d.%d' % sys.version_info[:2]).encode("ascii")
- for switch in '-V', '--version':
+ for switch in '-V', '--version', '-VV':
rc, out, err = assert_python_ok(switch)
self.assertFalse(err.startswith(version))
self.assertTrue(out.startswith(version))
Core and Builtins
-----------------
+- Issue #28532: Show sys.version when -V option is supplied twice.
+
- Issue #28746: Fix the set_inheritable() file descriptor method on platforms
that do not have the ioctl FIOCLEX and FIONCLEX commands.
at exit.
.TP
.B \-V ", " \-\-version
-Prints the Python version number of the executable and exits.
+Prints the Python version number of the executable and exits. When given
+twice, print more information about the build.
.TP
.BI "\-W " argument
Warning control. Python sometimes prints warning message to
-v : verbose (trace import statements); also PYTHONVERBOSE=x\n\
can be supplied multiple times to increase verbosity\n\
-V : print the Python version number and exit (also --version)\n\
+ when given twice, print more information about the build\n\
-W arg : warning control; arg is action:message:category:module:lineno\n\
also PYTHONWARNINGS=arg\n\
-x : skip first line of source, allowing use of non-Unix forms of #!cmd\n\
return usage(0, argv[0]);
if (version) {
- printf("Python %s\n", PY_VERSION);
+ printf("Python %s\n", version >= 2 ? Py_GetVersion() : PY_VERSION);
return 0;
}