1- # Autogenerated by Sphinx on Tue Feb 11 19:16:18 2025
1+ # Autogenerated by Sphinx on Fri Mar 14 15:32:05 2025
22# as part of the release process.
33
44topics = {
@@ -3829,7 +3829,7 @@ def double(x):
38293829You can also invoke "pdb" from the command line to debug other
38303830scripts. For example:
38313831
3832- python -m pdb myscript.py
3832+ python -m pdb [-c command] (-m module | pyfile) [args ...]
38333833
38343834When invoked as a module, pdb will automatically enter post-mortem
38353835debugging if the program being debugged exits abnormally. After post-
@@ -3838,12 +3838,20 @@ def double(x):
38383838as breakpoints) and in most cases is more useful than quitting the
38393839debugger upon program’s exit.
38403840
3841- Changed in version 3.2: Added the "-c" option to execute commands as
3842- if given in a ".pdbrc" file; see Debugger Commands.
3841+ -c, --command <command>
38433842
3844- Changed in version 3.7: Added the "-m" option to execute modules
3845- similar to the way "python -m" does. As with a script, the debugger
3846- will pause execution just before the first line of the module.
3843+ To execute commands as if given in a ".pdbrc" file; see Debugger
3844+ Commands.
3845+
3846+ Changed in version 3.2: Added the "-c" option.
3847+
3848+ -m <module>
3849+
3850+ To execute modules similar to the way "python -m" does. As with a
3851+ script, the debugger will pause execution just before the first
3852+ line of the module.
3853+
3854+ Changed in version 3.7: Added the "-m" option.
38473855
38483856Typical usage to execute a statement under control of the debugger is:
38493857
@@ -3950,9 +3958,9 @@ class pdb.Pdb(completekey='tab', stdin=None, stdout=None, skip=None, nosigint=Fa
39503958 originate in a module that matches one of these patterns. [1]
39513959
39523960 By default, Pdb sets a handler for the SIGINT signal (which is sent
3953- when the user presses "Ctrl- C" on the console) when you give a
3961+ when the user presses "Ctrl"-" C" on the console) when you give a
39543962 "continue" command. This allows you to break into the debugger
3955- again by pressing "Ctrl- C". If you want Pdb not to touch the
3963+ again by pressing "Ctrl"-" C". If you want Pdb not to touch the
39563964 SIGINT handler, set *nosigint* to true.
39573965
39583966 The *readrc* argument defaults to true and controls whether Pdb
@@ -3979,6 +3987,10 @@ class pdb.Pdb(completekey='tab', stdin=None, stdout=None, skip=None, nosigint=Fa
39793987
39803988 Added in version 3.14: Added the *mode* argument.
39813989
3990+ Changed in version 3.14: Inline breakpoints like "breakpoint()" or
3991+ "pdb.set_trace()" will always stop the program at calling frame,
3992+ ignoring the *skip* pattern (if any).
3993+
39823994 run(statement, globals=None, locals=None)
39833995 runeval(expression, globals=None, locals=None)
39843996 runcall(function, *args, **kwds)
@@ -5232,14 +5244,19 @@ class of the instance or a *non-virtual base class* thereof. The
52325244
52335245The general form of a *standard format specifier* is:
52345246
5235- **format_spec**: [["fill"]"align"]["sign"]["z"]["#"]["0"]["width"]["grouping_option"]["." "precision"]["type"]
5236- **fill**: <any character>
5237- **align**: "<" | ">" | "=" | "^"
5238- **sign**: "+" | "-" | " "
5239- **width**: "digit"+
5240- **grouping_option**: "_" | ","
5241- **precision**: "digit"+
5242- **type**: "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"
5247+ **format_spec**: ["options"]["width_and_precision"]["type"]
5248+ **options**: [["fill"]"align"]["sign"]["z"]["#"]["0"]
5249+ **fill**: <any character>
5250+ **align**: "<" | ">" | "=" | "^"
5251+ **sign**: "+" | "-" | " "
5252+ **width_and_precision**: ["width_with_grouping"]["precision_with_grouping"]
5253+ **width_with_grouping**: ["width"]["grouping_option"]
5254+ **precision_with_grouping**: "." ["precision"]"grouping_option"
5255+ **width**: "digit"+
5256+ **grouping_option**: "_" | ","
5257+ **precision**: "digit"+
5258+ **type**: "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g"
5259+ | "G" | "n" | "o" | "s" | "x" | "X" | "%"
52435260
52445261If a valid *align* value is specified, it can be preceded by a *fill*
52455262character that can be any character and defaults to a space if
@@ -5347,6 +5364,13 @@ class of the instance or a *non-virtual base class* thereof. The
53475364from the field content. The *precision* is not allowed for integer
53485365presentation types.
53495366
5367+ The "'_'" or "','" option after *precision* means the use of an
5368+ underscore or a comma for a thousands separator of the fractional part
5369+ for floating-point presentation types.
5370+
5371+ Changed in version 3.14: Support thousands separators for the
5372+ fractional part.
5373+
53505374Finally, the *type* determines how the data should be presented.
53515375
53525376The available string presentation types are:
@@ -5579,10 +5603,18 @@ class of the instance or a *non-virtual base class* thereof. The
55795603 >>> "int: {0:d}; hex: {0:#x}; oct: {0:#o}; bin: {0:#b}".format(42)
55805604 'int: 42; hex: 0x2a; oct: 0o52; bin: 0b101010'
55815605
5582- Using the comma as a thousands separator:
5606+ Using the comma or the underscore as a thousands separator:
55835607
55845608 >>> '{:,}'.format(1234567890)
55855609 '1,234,567,890'
5610+ >>> '{:_}'.format(1234567890)
5611+ '1_234_567_890'
5612+ >>> '{:_}'.format(123456789.123456789)
5613+ '123_456_789.12345679'
5614+ >>> '{:._}'.format(123456789.123456789)
5615+ '123456789.123_456_79'
5616+ >>> '{:_._}'.format(123456789.123456789)
5617+ '123_456_789.123_456_79'
55865618
55875619Expressing a percentage:
55885620
@@ -9316,14 +9348,19 @@ class is used in a class pattern with positional arguments, each
93169348
93179349str.isprintable()
93189350
9319- Return "True" if all characters in the string are printable or the
9320- string is empty, "False" otherwise. Nonprintable characters are
9321- those characters defined in the Unicode character database as
9322- “Other” or “Separator”, excepting the ASCII space (0x20) which is
9323- considered printable. (Note that printable characters in this
9324- context are those which should not be escaped when "repr()" is
9325- invoked on a string. It has no bearing on the handling of strings
9326- written to "sys.stdout" or "sys.stderr".)
9351+ Return true if all characters in the string are printable, false if
9352+ it contains at least one non-printable character.
9353+
9354+ Here “printable” means the character is suitable for "repr()" to
9355+ use in its output; “non-printable” means that "repr()" on built-in
9356+ types will hex-escape the character. It has no bearing on the
9357+ handling of strings written to "sys.stdout" or "sys.stderr".
9358+
9359+ The printable characters are those which in the Unicode character
9360+ database (see "unicodedata") have a general category in group
9361+ Letter, Mark, Number, Punctuation, or Symbol (L, M, N, P, or S);
9362+ plus the ASCII space 0x20. Nonprintable characters are those in
9363+ group Separator or Other (Z or C), except the ASCII space.
93279364
93289365str.isspace()
93299366
0 commit comments