jpayne@68
|
1 .TH PYTHON "1"
|
jpayne@68
|
2
|
jpayne@68
|
3 .\" To view this file while editing, run it through groff:
|
jpayne@68
|
4 .\" groff -Tascii -man python.man | less
|
jpayne@68
|
5
|
jpayne@68
|
6 .SH NAME
|
jpayne@68
|
7 python \- an interpreted, interactive, object-oriented programming language
|
jpayne@68
|
8 .SH SYNOPSIS
|
jpayne@68
|
9 .B python
|
jpayne@68
|
10 [
|
jpayne@68
|
11 .B \-B
|
jpayne@68
|
12 ]
|
jpayne@68
|
13 [
|
jpayne@68
|
14 .B \-b
|
jpayne@68
|
15 ]
|
jpayne@68
|
16 [
|
jpayne@68
|
17 .B \-d
|
jpayne@68
|
18 ]
|
jpayne@68
|
19 [
|
jpayne@68
|
20 .B \-E
|
jpayne@68
|
21 ]
|
jpayne@68
|
22 [
|
jpayne@68
|
23 .B \-h
|
jpayne@68
|
24 ]
|
jpayne@68
|
25 [
|
jpayne@68
|
26 .B \-i
|
jpayne@68
|
27 ]
|
jpayne@68
|
28 [
|
jpayne@68
|
29 .B \-I
|
jpayne@68
|
30 ]
|
jpayne@68
|
31 .br
|
jpayne@68
|
32 [
|
jpayne@68
|
33 .B \-m
|
jpayne@68
|
34 .I module-name
|
jpayne@68
|
35 ]
|
jpayne@68
|
36 [
|
jpayne@68
|
37 .B \-q
|
jpayne@68
|
38 ]
|
jpayne@68
|
39 [
|
jpayne@68
|
40 .B \-O
|
jpayne@68
|
41 ]
|
jpayne@68
|
42 [
|
jpayne@68
|
43 .B \-OO
|
jpayne@68
|
44 ]
|
jpayne@68
|
45 [
|
jpayne@68
|
46 .B \-s
|
jpayne@68
|
47 ]
|
jpayne@68
|
48 [
|
jpayne@68
|
49 .B \-S
|
jpayne@68
|
50 ]
|
jpayne@68
|
51 [
|
jpayne@68
|
52 .B \-u
|
jpayne@68
|
53 ]
|
jpayne@68
|
54 .br
|
jpayne@68
|
55 [
|
jpayne@68
|
56 .B \-v
|
jpayne@68
|
57 ]
|
jpayne@68
|
58 [
|
jpayne@68
|
59 .B \-V
|
jpayne@68
|
60 ]
|
jpayne@68
|
61 [
|
jpayne@68
|
62 .B \-W
|
jpayne@68
|
63 .I argument
|
jpayne@68
|
64 ]
|
jpayne@68
|
65 [
|
jpayne@68
|
66 .B \-x
|
jpayne@68
|
67 ]
|
jpayne@68
|
68 [
|
jpayne@68
|
69 [
|
jpayne@68
|
70 .B \-X
|
jpayne@68
|
71 .I option
|
jpayne@68
|
72 ]
|
jpayne@68
|
73 .B \-?
|
jpayne@68
|
74 ]
|
jpayne@68
|
75 .br
|
jpayne@68
|
76 [
|
jpayne@68
|
77 .B \--check-hash-based-pycs
|
jpayne@68
|
78 .I default
|
jpayne@68
|
79 |
|
jpayne@68
|
80 .I always
|
jpayne@68
|
81 |
|
jpayne@68
|
82 .I never
|
jpayne@68
|
83 ]
|
jpayne@68
|
84 .br
|
jpayne@68
|
85 [
|
jpayne@68
|
86 .B \-c
|
jpayne@68
|
87 .I command
|
jpayne@68
|
88 |
|
jpayne@68
|
89 .I script
|
jpayne@68
|
90 |
|
jpayne@68
|
91 \-
|
jpayne@68
|
92 ]
|
jpayne@68
|
93 [
|
jpayne@68
|
94 .I arguments
|
jpayne@68
|
95 ]
|
jpayne@68
|
96 .SH DESCRIPTION
|
jpayne@68
|
97 Python is an interpreted, interactive, object-oriented programming
|
jpayne@68
|
98 language that combines remarkable power with very clear syntax.
|
jpayne@68
|
99 For an introduction to programming in Python, see the Python Tutorial.
|
jpayne@68
|
100 The Python Library Reference documents built-in and standard types,
|
jpayne@68
|
101 constants, functions and modules.
|
jpayne@68
|
102 Finally, the Python Reference Manual describes the syntax and
|
jpayne@68
|
103 semantics of the core language in (perhaps too) much detail.
|
jpayne@68
|
104 (These documents may be located via the
|
jpayne@68
|
105 .B "INTERNET RESOURCES"
|
jpayne@68
|
106 below; they may be installed on your system as well.)
|
jpayne@68
|
107 .PP
|
jpayne@68
|
108 Python's basic power can be extended with your own modules written in
|
jpayne@68
|
109 C or C++.
|
jpayne@68
|
110 On most systems such modules may be dynamically loaded.
|
jpayne@68
|
111 Python is also adaptable as an extension language for existing
|
jpayne@68
|
112 applications.
|
jpayne@68
|
113 See the internal documentation for hints.
|
jpayne@68
|
114 .PP
|
jpayne@68
|
115 Documentation for installed Python modules and packages can be
|
jpayne@68
|
116 viewed by running the
|
jpayne@68
|
117 .B pydoc
|
jpayne@68
|
118 program.
|
jpayne@68
|
119 .SH COMMAND LINE OPTIONS
|
jpayne@68
|
120 .TP
|
jpayne@68
|
121 .B \-B
|
jpayne@68
|
122 Don't write
|
jpayne@68
|
123 .I .pyc
|
jpayne@68
|
124 files on import. See also PYTHONDONTWRITEBYTECODE.
|
jpayne@68
|
125 .TP
|
jpayne@68
|
126 .B \-b
|
jpayne@68
|
127 Issue warnings about str(bytes_instance), str(bytearray_instance)
|
jpayne@68
|
128 and comparing bytes/bytearray with str. (-bb: issue errors)
|
jpayne@68
|
129 .TP
|
jpayne@68
|
130 .BI "\-c " command
|
jpayne@68
|
131 Specify the command to execute (see next section).
|
jpayne@68
|
132 This terminates the option list (following options are passed as
|
jpayne@68
|
133 arguments to the command).
|
jpayne@68
|
134 .TP
|
jpayne@68
|
135 .BI "\-\-check-hash-based-pycs " mode
|
jpayne@68
|
136 Configure how Python evaluates the up-to-dateness of hash-based .pyc files.
|
jpayne@68
|
137 .TP
|
jpayne@68
|
138 .B \-d
|
jpayne@68
|
139 Turn on parser debugging output (for expert only, depending on
|
jpayne@68
|
140 compilation options).
|
jpayne@68
|
141 .TP
|
jpayne@68
|
142 .B \-E
|
jpayne@68
|
143 Ignore environment variables like PYTHONPATH and PYTHONHOME that modify
|
jpayne@68
|
144 the behavior of the interpreter.
|
jpayne@68
|
145 .TP
|
jpayne@68
|
146 .B \-h ", " \-? ", "\-\-help
|
jpayne@68
|
147 Prints the usage for the interpreter executable and exits.
|
jpayne@68
|
148 .TP
|
jpayne@68
|
149 .B \-i
|
jpayne@68
|
150 When a script is passed as first argument or the \fB\-c\fP option is
|
jpayne@68
|
151 used, enter interactive mode after executing the script or the
|
jpayne@68
|
152 command. It does not read the $PYTHONSTARTUP file. This can be
|
jpayne@68
|
153 useful to inspect global variables or a stack trace when a script
|
jpayne@68
|
154 raises an exception.
|
jpayne@68
|
155 .TP
|
jpayne@68
|
156 .B \-I
|
jpayne@68
|
157 Run Python in isolated mode. This also implies \fB\-E\fP and \fB\-s\fP. In
|
jpayne@68
|
158 isolated mode sys.path contains neither the script's directory nor the user's
|
jpayne@68
|
159 site-packages directory. All PYTHON* environment variables are ignored, too.
|
jpayne@68
|
160 Further restrictions may be imposed to prevent the user from injecting
|
jpayne@68
|
161 malicious code.
|
jpayne@68
|
162 .TP
|
jpayne@68
|
163 .BI "\-m " module-name
|
jpayne@68
|
164 Searches
|
jpayne@68
|
165 .I sys.path
|
jpayne@68
|
166 for the named module and runs the corresponding
|
jpayne@68
|
167 .I .py
|
jpayne@68
|
168 file as a script.
|
jpayne@68
|
169 .TP
|
jpayne@68
|
170 .B \-O
|
jpayne@68
|
171 Remove assert statements and any code conditional on the value of
|
jpayne@68
|
172 __debug__; augment the filename for compiled (bytecode) files by
|
jpayne@68
|
173 adding .opt-1 before the .pyc extension.
|
jpayne@68
|
174 .TP
|
jpayne@68
|
175 .B \-OO
|
jpayne@68
|
176 Do \fB-O\fP and also discard docstrings; change the filename for
|
jpayne@68
|
177 compiled (bytecode) files by adding .opt-2 before the .pyc extension.
|
jpayne@68
|
178 .TP
|
jpayne@68
|
179 .B \-q
|
jpayne@68
|
180 Do not print the version and copyright messages. These messages are
|
jpayne@68
|
181 also suppressed in non-interactive mode.
|
jpayne@68
|
182 .TP
|
jpayne@68
|
183 .B \-s
|
jpayne@68
|
184 Don't add user site directory to sys.path.
|
jpayne@68
|
185 .TP
|
jpayne@68
|
186 .B \-S
|
jpayne@68
|
187 Disable the import of the module
|
jpayne@68
|
188 .I site
|
jpayne@68
|
189 and the site-dependent manipulations of
|
jpayne@68
|
190 .I sys.path
|
jpayne@68
|
191 that it entails. Also disable these manipulations if
|
jpayne@68
|
192 .I site
|
jpayne@68
|
193 is explicitly imported later.
|
jpayne@68
|
194 .TP
|
jpayne@68
|
195 .B \-u
|
jpayne@68
|
196 Force the stdout and stderr streams to be unbuffered.
|
jpayne@68
|
197 This option has no effect on the stdin stream.
|
jpayne@68
|
198 .TP
|
jpayne@68
|
199 .B \-v
|
jpayne@68
|
200 Print a message each time a module is initialized, showing the place
|
jpayne@68
|
201 (filename or built-in module) from which it is loaded. When given
|
jpayne@68
|
202 twice, print a message for each file that is checked for when
|
jpayne@68
|
203 searching for a module. Also provides information on module cleanup
|
jpayne@68
|
204 at exit.
|
jpayne@68
|
205 .TP
|
jpayne@68
|
206 .B \-V ", " \-\-version
|
jpayne@68
|
207 Prints the Python version number of the executable and exits. When given
|
jpayne@68
|
208 twice, print more information about the build.
|
jpayne@68
|
209 .TP
|
jpayne@68
|
210 .BI "\-W " argument
|
jpayne@68
|
211 Warning control. Python sometimes prints warning message to
|
jpayne@68
|
212 .IR sys.stderr .
|
jpayne@68
|
213 A typical warning message has the following form:
|
jpayne@68
|
214 .IB file ":" line ": " category ": " message.
|
jpayne@68
|
215 By default, each warning is printed once for each source line where it
|
jpayne@68
|
216 occurs. This option controls how often warnings are printed.
|
jpayne@68
|
217 Multiple
|
jpayne@68
|
218 .B \-W
|
jpayne@68
|
219 options may be given; when a warning matches more than one
|
jpayne@68
|
220 option, the action for the last matching option is performed.
|
jpayne@68
|
221 Invalid
|
jpayne@68
|
222 .B \-W
|
jpayne@68
|
223 options are ignored (a warning message is printed about invalid
|
jpayne@68
|
224 options when the first warning is issued). Warnings can also be
|
jpayne@68
|
225 controlled from within a Python program using the
|
jpayne@68
|
226 .I warnings
|
jpayne@68
|
227 module.
|
jpayne@68
|
228
|
jpayne@68
|
229 The simplest form of
|
jpayne@68
|
230 .I argument
|
jpayne@68
|
231 is one of the following
|
jpayne@68
|
232 .I action
|
jpayne@68
|
233 strings (or a unique abbreviation):
|
jpayne@68
|
234 .B ignore
|
jpayne@68
|
235 to ignore all warnings;
|
jpayne@68
|
236 .B default
|
jpayne@68
|
237 to explicitly request the default behavior (printing each warning once
|
jpayne@68
|
238 per source line);
|
jpayne@68
|
239 .B all
|
jpayne@68
|
240 to print a warning each time it occurs (this may generate many
|
jpayne@68
|
241 messages if a warning is triggered repeatedly for the same source
|
jpayne@68
|
242 line, such as inside a loop);
|
jpayne@68
|
243 .B module
|
jpayne@68
|
244 to print each warning only the first time it occurs in each
|
jpayne@68
|
245 module;
|
jpayne@68
|
246 .B once
|
jpayne@68
|
247 to print each warning only the first time it occurs in the program; or
|
jpayne@68
|
248 .B error
|
jpayne@68
|
249 to raise an exception instead of printing a warning message.
|
jpayne@68
|
250
|
jpayne@68
|
251 The full form of
|
jpayne@68
|
252 .I argument
|
jpayne@68
|
253 is
|
jpayne@68
|
254 .IB action : message : category : module : line.
|
jpayne@68
|
255 Here,
|
jpayne@68
|
256 .I action
|
jpayne@68
|
257 is as explained above but only applies to messages that match the
|
jpayne@68
|
258 remaining fields. Empty fields match all values; trailing empty
|
jpayne@68
|
259 fields may be omitted. The
|
jpayne@68
|
260 .I message
|
jpayne@68
|
261 field matches the start of the warning message printed; this match is
|
jpayne@68
|
262 case-insensitive. The
|
jpayne@68
|
263 .I category
|
jpayne@68
|
264 field matches the warning category. This must be a class name; the
|
jpayne@68
|
265 match test whether the actual warning category of the message is a
|
jpayne@68
|
266 subclass of the specified warning category. The full class name must
|
jpayne@68
|
267 be given. The
|
jpayne@68
|
268 .I module
|
jpayne@68
|
269 field matches the (fully-qualified) module name; this match is
|
jpayne@68
|
270 case-sensitive. The
|
jpayne@68
|
271 .I line
|
jpayne@68
|
272 field matches the line number, where zero matches all line numbers and
|
jpayne@68
|
273 is thus equivalent to an omitted line number.
|
jpayne@68
|
274 .TP
|
jpayne@68
|
275 .BI "\-X " option
|
jpayne@68
|
276 Set implementation specific option.
|
jpayne@68
|
277 .TP
|
jpayne@68
|
278 .B \-x
|
jpayne@68
|
279 Skip the first line of the source. This is intended for a DOS
|
jpayne@68
|
280 specific hack only. Warning: the line numbers in error messages will
|
jpayne@68
|
281 be off by one!
|
jpayne@68
|
282 .SH INTERPRETER INTERFACE
|
jpayne@68
|
283 The interpreter interface resembles that of the UNIX shell: when
|
jpayne@68
|
284 called with standard input connected to a tty device, it prompts for
|
jpayne@68
|
285 commands and executes them until an EOF is read; when called with a
|
jpayne@68
|
286 file name argument or with a file as standard input, it reads and
|
jpayne@68
|
287 executes a
|
jpayne@68
|
288 .I script
|
jpayne@68
|
289 from that file;
|
jpayne@68
|
290 when called with
|
jpayne@68
|
291 .B \-c
|
jpayne@68
|
292 .IR command ,
|
jpayne@68
|
293 it executes the Python statement(s) given as
|
jpayne@68
|
294 .IR command .
|
jpayne@68
|
295 Here
|
jpayne@68
|
296 .I command
|
jpayne@68
|
297 may contain multiple statements separated by newlines.
|
jpayne@68
|
298 Leading whitespace is significant in Python statements!
|
jpayne@68
|
299 In non-interactive mode, the entire input is parsed before it is
|
jpayne@68
|
300 executed.
|
jpayne@68
|
301 .PP
|
jpayne@68
|
302 If available, the script name and additional arguments thereafter are
|
jpayne@68
|
303 passed to the script in the Python variable
|
jpayne@68
|
304 .IR sys.argv ,
|
jpayne@68
|
305 which is a list of strings (you must first
|
jpayne@68
|
306 .I import sys
|
jpayne@68
|
307 to be able to access it).
|
jpayne@68
|
308 If no script name is given,
|
jpayne@68
|
309 .I sys.argv[0]
|
jpayne@68
|
310 is an empty string; if
|
jpayne@68
|
311 .B \-c
|
jpayne@68
|
312 is used,
|
jpayne@68
|
313 .I sys.argv[0]
|
jpayne@68
|
314 contains the string
|
jpayne@68
|
315 .I '-c'.
|
jpayne@68
|
316 Note that options interpreted by the Python interpreter itself
|
jpayne@68
|
317 are not placed in
|
jpayne@68
|
318 .IR sys.argv .
|
jpayne@68
|
319 .PP
|
jpayne@68
|
320 In interactive mode, the primary prompt is `>>>'; the second prompt
|
jpayne@68
|
321 (which appears when a command is not complete) is `...'.
|
jpayne@68
|
322 The prompts can be changed by assignment to
|
jpayne@68
|
323 .I sys.ps1
|
jpayne@68
|
324 or
|
jpayne@68
|
325 .IR sys.ps2 .
|
jpayne@68
|
326 The interpreter quits when it reads an EOF at a prompt.
|
jpayne@68
|
327 When an unhandled exception occurs, a stack trace is printed and
|
jpayne@68
|
328 control returns to the primary prompt; in non-interactive mode, the
|
jpayne@68
|
329 interpreter exits after printing the stack trace.
|
jpayne@68
|
330 The interrupt signal raises the
|
jpayne@68
|
331 .I Keyboard\%Interrupt
|
jpayne@68
|
332 exception; other UNIX signals are not caught (except that SIGPIPE is
|
jpayne@68
|
333 sometimes ignored, in favor of the
|
jpayne@68
|
334 .I IOError
|
jpayne@68
|
335 exception). Error messages are written to stderr.
|
jpayne@68
|
336 .SH FILES AND DIRECTORIES
|
jpayne@68
|
337 These are subject to difference depending on local installation
|
jpayne@68
|
338 conventions; ${prefix} and ${exec_prefix} are installation-dependent
|
jpayne@68
|
339 and should be interpreted as for GNU software; they may be the same.
|
jpayne@68
|
340 The default for both is \fI/usr/local\fP.
|
jpayne@68
|
341 .IP \fI${exec_prefix}/bin/python\fP
|
jpayne@68
|
342 Recommended location of the interpreter.
|
jpayne@68
|
343 .PP
|
jpayne@68
|
344 .I ${prefix}/lib/python<version>
|
jpayne@68
|
345 .br
|
jpayne@68
|
346 .I ${exec_prefix}/lib/python<version>
|
jpayne@68
|
347 .RS
|
jpayne@68
|
348 Recommended locations of the directories containing the standard
|
jpayne@68
|
349 modules.
|
jpayne@68
|
350 .RE
|
jpayne@68
|
351 .PP
|
jpayne@68
|
352 .I ${prefix}/include/python<version>
|
jpayne@68
|
353 .br
|
jpayne@68
|
354 .I ${exec_prefix}/include/python<version>
|
jpayne@68
|
355 .RS
|
jpayne@68
|
356 Recommended locations of the directories containing the include files
|
jpayne@68
|
357 needed for developing Python extensions and embedding the
|
jpayne@68
|
358 interpreter.
|
jpayne@68
|
359 .RE
|
jpayne@68
|
360 .SH ENVIRONMENT VARIABLES
|
jpayne@68
|
361 .IP PYTHONHOME
|
jpayne@68
|
362 Change the location of the standard Python libraries. By default, the
|
jpayne@68
|
363 libraries are searched in ${prefix}/lib/python<version> and
|
jpayne@68
|
364 ${exec_prefix}/lib/python<version>, where ${prefix} and ${exec_prefix}
|
jpayne@68
|
365 are installation-dependent directories, both defaulting to
|
jpayne@68
|
366 \fI/usr/local\fP. When $PYTHONHOME is set to a single directory, its value
|
jpayne@68
|
367 replaces both ${prefix} and ${exec_prefix}. To specify different values
|
jpayne@68
|
368 for these, set $PYTHONHOME to ${prefix}:${exec_prefix}.
|
jpayne@68
|
369 .IP PYTHONPATH
|
jpayne@68
|
370 Augments the default search path for module files.
|
jpayne@68
|
371 The format is the same as the shell's $PATH: one or more directory
|
jpayne@68
|
372 pathnames separated by colons.
|
jpayne@68
|
373 Non-existent directories are silently ignored.
|
jpayne@68
|
374 The default search path is installation dependent, but generally
|
jpayne@68
|
375 begins with ${prefix}/lib/python<version> (see PYTHONHOME above).
|
jpayne@68
|
376 The default search path is always appended to $PYTHONPATH.
|
jpayne@68
|
377 If a script argument is given, the directory containing the script is
|
jpayne@68
|
378 inserted in the path in front of $PYTHONPATH.
|
jpayne@68
|
379 The search path can be manipulated from within a Python program as the
|
jpayne@68
|
380 variable
|
jpayne@68
|
381 .IR sys.path .
|
jpayne@68
|
382 .IP PYTHONSTARTUP
|
jpayne@68
|
383 If this is the name of a readable file, the Python commands in that
|
jpayne@68
|
384 file are executed before the first prompt is displayed in interactive
|
jpayne@68
|
385 mode.
|
jpayne@68
|
386 The file is executed in the same name space where interactive commands
|
jpayne@68
|
387 are executed so that objects defined or imported in it can be used
|
jpayne@68
|
388 without qualification in the interactive session.
|
jpayne@68
|
389 You can also change the prompts
|
jpayne@68
|
390 .I sys.ps1
|
jpayne@68
|
391 and
|
jpayne@68
|
392 .I sys.ps2
|
jpayne@68
|
393 in this file.
|
jpayne@68
|
394 .IP PYTHONOPTIMIZE
|
jpayne@68
|
395 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
396 the \fB\-O\fP option. If set to an integer, it is equivalent to
|
jpayne@68
|
397 specifying \fB\-O\fP multiple times.
|
jpayne@68
|
398 .IP PYTHONDEBUG
|
jpayne@68
|
399 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
400 the \fB\-d\fP option. If set to an integer, it is equivalent to
|
jpayne@68
|
401 specifying \fB\-d\fP multiple times.
|
jpayne@68
|
402 .IP PYTHONDONTWRITEBYTECODE
|
jpayne@68
|
403 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
404 the \fB\-B\fP option (don't try to write
|
jpayne@68
|
405 .I .pyc
|
jpayne@68
|
406 files).
|
jpayne@68
|
407 .IP PYTHONINSPECT
|
jpayne@68
|
408 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
409 the \fB\-i\fP option.
|
jpayne@68
|
410 .IP PYTHONIOENCODING
|
jpayne@68
|
411 If this is set before running the interpreter, it overrides the encoding used
|
jpayne@68
|
412 for stdin/stdout/stderr, in the syntax
|
jpayne@68
|
413 .IB encodingname ":" errorhandler
|
jpayne@68
|
414 The
|
jpayne@68
|
415 .IB errorhandler
|
jpayne@68
|
416 part is optional and has the same meaning as in str.encode. For stderr, the
|
jpayne@68
|
417 .IB errorhandler
|
jpayne@68
|
418 part is ignored; the handler will always be \'backslashreplace\'.
|
jpayne@68
|
419 .IP PYTHONNOUSERSITE
|
jpayne@68
|
420 If this is set to a non-empty string it is equivalent to specifying the
|
jpayne@68
|
421 \fB\-s\fP option (Don't add the user site directory to sys.path).
|
jpayne@68
|
422 .IP PYTHONUNBUFFERED
|
jpayne@68
|
423 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
424 the \fB\-u\fP option.
|
jpayne@68
|
425 .IP PYTHONVERBOSE
|
jpayne@68
|
426 If this is set to a non-empty string it is equivalent to specifying
|
jpayne@68
|
427 the \fB\-v\fP option. If set to an integer, it is equivalent to
|
jpayne@68
|
428 specifying \fB\-v\fP multiple times.
|
jpayne@68
|
429 .IP PYTHONWARNINGS
|
jpayne@68
|
430 If this is set to a comma-separated string it is equivalent to
|
jpayne@68
|
431 specifying the \fB\-W\fP option for each separate value.
|
jpayne@68
|
432 .IP PYTHONHASHSEED
|
jpayne@68
|
433 If this variable is set to "random", a random value is used to seed the hashes
|
jpayne@68
|
434 of str and bytes objects.
|
jpayne@68
|
435
|
jpayne@68
|
436 If PYTHONHASHSEED is set to an integer value, it is used as a fixed seed for
|
jpayne@68
|
437 generating the hash() of the types covered by the hash randomization. Its
|
jpayne@68
|
438 purpose is to allow repeatable hashing, such as for selftests for the
|
jpayne@68
|
439 interpreter itself, or to allow a cluster of python processes to share hash
|
jpayne@68
|
440 values.
|
jpayne@68
|
441
|
jpayne@68
|
442 The integer must be a decimal number in the range [0,4294967295]. Specifying
|
jpayne@68
|
443 the value 0 will disable hash randomization.
|
jpayne@68
|
444 .IP PYTHONMALLOC
|
jpayne@68
|
445 Set the Python memory allocators and/or install debug hooks. The available
|
jpayne@68
|
446 memory allocators are
|
jpayne@68
|
447 .IR malloc
|
jpayne@68
|
448 and
|
jpayne@68
|
449 .IR pymalloc .
|
jpayne@68
|
450 The available debug hooks are
|
jpayne@68
|
451 .IR debug ,
|
jpayne@68
|
452 .IR malloc_debug ,
|
jpayne@68
|
453 and
|
jpayne@68
|
454 .IR pymalloc_debug .
|
jpayne@68
|
455 .IP
|
jpayne@68
|
456 When Python is compiled in debug mode, the default is
|
jpayne@68
|
457 .IR pymalloc_debug
|
jpayne@68
|
458 and the debug hooks are automatically used. Otherwise, the default is
|
jpayne@68
|
459 .IR pymalloc .
|
jpayne@68
|
460 .IP PYTHONMALLOCSTATS
|
jpayne@68
|
461 If set to a non-empty string, Python will print statistics of the pymalloc
|
jpayne@68
|
462 memory allocator every time a new pymalloc object arena is created, and on
|
jpayne@68
|
463 shutdown.
|
jpayne@68
|
464 .IP
|
jpayne@68
|
465 This variable is ignored if the
|
jpayne@68
|
466 .RB $ PYTHONMALLOC
|
jpayne@68
|
467 environment variable is used to force the
|
jpayne@68
|
468 .BR malloc (3)
|
jpayne@68
|
469 allocator of the C library, or if Python is configured without pymalloc support.
|
jpayne@68
|
470 .IP PYTHONASYNCIODEBUG
|
jpayne@68
|
471 If this environment variable is set to a non-empty string, enable the debug
|
jpayne@68
|
472 mode of the asyncio module.
|
jpayne@68
|
473 .IP PYTHONTRACEMALLOC
|
jpayne@68
|
474 If this environment variable is set to a non-empty string, start tracing
|
jpayne@68
|
475 Python memory allocations using the tracemalloc module.
|
jpayne@68
|
476 .IP
|
jpayne@68
|
477 The value of the variable is the maximum number of frames stored in a
|
jpayne@68
|
478 traceback of a trace. For example,
|
jpayne@68
|
479 .IB PYTHONTRACEMALLOC=1
|
jpayne@68
|
480 stores only the most recent frame.
|
jpayne@68
|
481 .IP PYTHONFAULTHANDLER
|
jpayne@68
|
482 If this environment variable is set to a non-empty string,
|
jpayne@68
|
483 .IR faulthandler.enable()
|
jpayne@68
|
484 is called at startup: install a handler for SIGSEGV, SIGFPE, SIGABRT, SIGBUS
|
jpayne@68
|
485 and SIGILL signals to dump the Python traceback.
|
jpayne@68
|
486 .IP
|
jpayne@68
|
487 This is equivalent to the \fB-X faulthandler\fP option.
|
jpayne@68
|
488 .IP PYTHONEXECUTABLE
|
jpayne@68
|
489 If this environment variable is set,
|
jpayne@68
|
490 .IB sys.argv[0]
|
jpayne@68
|
491 will be set to its value instead of the value got through the C runtime. Only
|
jpayne@68
|
492 works on Mac OS X.
|
jpayne@68
|
493 .IP PYTHONUSERBASE
|
jpayne@68
|
494 Defines the user base directory, which is used to compute the path of the user
|
jpayne@68
|
495 .IR site-packages
|
jpayne@68
|
496 directory and Distutils installation paths for
|
jpayne@68
|
497 .IR "python setup\.py install \-\-user" .
|
jpayne@68
|
498 .IP PYTHONPROFILEIMPORTTIME
|
jpayne@68
|
499 If this environment variable is set to a non-empty string, Python will
|
jpayne@68
|
500 show how long each import takes. This is exactly equivalent to setting
|
jpayne@68
|
501 \fB\-X importtime\fP on the command line.
|
jpayne@68
|
502 .IP PYTHONBREAKPOINT
|
jpayne@68
|
503 If this environment variable is set to 0, it disables the default debugger. It
|
jpayne@68
|
504 can be set to the callable of your debugger of choice.
|
jpayne@68
|
505 .SS Debug-mode variables
|
jpayne@68
|
506 Setting these variables only has an effect in a debug build of Python, that is,
|
jpayne@68
|
507 if Python was configured with the
|
jpayne@68
|
508 \fB\--with-pydebug\fP build option.
|
jpayne@68
|
509 .IP PYTHONTHREADDEBUG
|
jpayne@68
|
510 If this environment variable is set, Python will print threading debug info.
|
jpayne@68
|
511 .IP PYTHONDUMPREFS
|
jpayne@68
|
512 If this environment variable is set, Python will dump objects and reference
|
jpayne@68
|
513 counts still alive after shutting down the interpreter.
|
jpayne@68
|
514 .SH AUTHOR
|
jpayne@68
|
515 The Python Software Foundation: https://www.python.org/psf/
|
jpayne@68
|
516 .SH INTERNET RESOURCES
|
jpayne@68
|
517 Main website: https://www.python.org/
|
jpayne@68
|
518 .br
|
jpayne@68
|
519 Documentation: https://docs.python.org/
|
jpayne@68
|
520 .br
|
jpayne@68
|
521 Developer resources: https://devguide.python.org/
|
jpayne@68
|
522 .br
|
jpayne@68
|
523 Downloads: https://www.python.org/downloads/
|
jpayne@68
|
524 .br
|
jpayne@68
|
525 Module repository: https://pypi.org/
|
jpayne@68
|
526 .br
|
jpayne@68
|
527 Newsgroups: comp.lang.python, comp.lang.python.announce
|
jpayne@68
|
528 .SH LICENSING
|
jpayne@68
|
529 Python is distributed under an Open Source license. See the file
|
jpayne@68
|
530 "LICENSE" in the Python source distribution for information on terms &
|
jpayne@68
|
531 conditions for accessing and otherwise using Python and for a
|
jpayne@68
|
532 DISCLAIMER OF ALL WARRANTIES.
|