cpython/Doc/library
Daniel Olshansky 01602ae403 bpo-37958: Adding get_profile_dict to pstats (GH-15495)
pstats is really useful or profiling and printing the output of the execution of some block of code, but I've found on multiple occasions when I'd like to access this output directly in an easily usable dictionary on which I can further analyze or manipulate.

The proposal is to add a function called get_profile_dict inside of pstats that'll automatically return this data the data in an easily accessible dict.

The output of the following script:

```
import cProfile, pstats
import pprint
from pstats import func_std_string, f8

def fib(n):
    if n == 0:
        return 0
    if n == 1:
        return 1
    return fib(n-1) + fib(n-2)

pr = cProfile.Profile()
pr.enable()
fib(5)
pr.create_stats()

ps = pstats.Stats(pr).sort_stats('tottime', 'cumtime')

def get_profile_dict(self, keys_filter=None):
    """
        Returns a dict where the key is a function name and the value is a dict
        with the following keys:
            - ncalls
            - tottime
            - percall_tottime
            - cumtime
            - percall_cumtime
            - file_name
            - line_number

        keys_filter can be optionally set to limit the key-value pairs in the
        retrieved dict.
    """
    pstats_dict = {}
    func_list = self.fcn_list[:] if self.fcn_list else list(self.stats.keys())

    if not func_list:
        return pstats_dict

    pstats_dict["total_tt"] = float(f8(self.total_tt))
    for func in func_list:
        cc, nc, tt, ct, callers = self.stats[func]
        file, line, func_name = func
        ncalls = str(nc) if nc == cc else (str(nc) + '/' + str(cc))
        tottime = float(f8(tt))
        percall_tottime = -1 if nc == 0 else float(f8(tt/nc))
        cumtime = float(f8(ct))
        percall_cumtime = -1 if cc == 0 else float(f8(ct/cc))
        func_dict = {
            "ncalls": ncalls,
            "tottime": tottime, # time spent in this function alone
            "percall_tottime": percall_tottime,
            "cumtime": cumtime, # time spent in the function plus all functions that this function called,
            "percall_cumtime": percall_cumtime,
            "file_name": file,
            "line_number": line
        }
        func_dict_filtered = func_dict if not keys_filter else { key: func_dict[key] for key in keys_filter }
        pstats_dict[func_name] = func_dict_filtered

    return pstats_dict

pp = pprint.PrettyPrinter(depth=6)
pp.pprint(get_profile_dict(ps))
```

will produce:

```
{"<method 'disable' of '_lsprof.Profiler' objects>": {'cumtime': 0.0,
                                                      'file_name': '~',
                                                      'line_number': 0,
                                                      'ncalls': '1',
                                                      'percall_cumtime': 0.0,
                                                      'percall_tottime': 0.0,
                                                      'tottime': 0.0},
 'create_stats': {'cumtime': 0.0,
                  'file_name': '/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/cProfile.py',
                  'line_number': 50,
                  'ncalls': '1',
                  'percall_cumtime': 0.0,
                  'percall_tottime': 0.0,
                  'tottime': 0.0},
 'fib': {'cumtime': 0.0,
         'file_name': 'get_profile_dict.py',
         'line_number': 5,
         'ncalls': '15/1',
         'percall_cumtime': 0.0,
         'percall_tottime': 0.0,
         'tottime': 0.0},
 'total_tt': 0.0}
 ```

 As an example, this can be used to generate a stacked column chart using various visualization tools which will assist in easily identifying program bottlenecks.



https://bugs.python.org/issue37958



Automerge-Triggered-By: @gpshead
2020-01-15 14:51:54 -08:00
..
2to3.rst bpo-39313: Add an option to RefactoringTool for using exec as a function (GH-17967) 2020-01-12 14:13:31 -08:00
__future__.rst String annotations [PEP 563] (#4390) 2018-01-26 08:20:18 -08:00
__main__.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
_thread.rst bpo-37077: Add native thread ID (TID) for AIX (GH-13624) 2019-06-13 15:34:46 -07:00
abc.rst Grammar corrections in abc.rst (GH-10525) 2018-11-13 16:40:44 -08:00
aifc.rst bpo-35506: Remove redundant and incorrect links from keywords. (GH-11174) 2018-12-19 08:09:46 +02:00
allos.rst
archiving.rst
argparse.rst bpo-38678: Improve argparse example in tutorial (GH-17207) 2019-11-17 22:06:19 -08:00
array.rst bpo-38916: array.array: remove fromstring() and tostring() (GH-17487) 2019-12-09 14:09:14 +01:00
ast.rst bpo-3530: Add advice on when to correctly use fix_missing_locations in the AST docs (GH-17172) 2020-01-12 20:38:53 +00:00
asynchat.rst Issue 25002: Deprecate asyncore/asynchat. Patch by Mariatta. 2016-10-25 08:49:13 -07:00
asyncio-api-index.rst bpo-38242: Revert "bpo-36889: Merge asyncio streams (GH-13251)" (#16482) 2019-09-29 21:59:55 -07:00
asyncio-dev.rst Fix grammar in asyncio-dev.rst (GH-15672) 2019-09-03 23:04:09 -07:00
asyncio-eventloop.rst Doc typo (#17667) 2019-12-20 03:21:03 +01:00
asyncio-exceptions.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-future.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-llapi-index.rst bpo-34746: Fix stop -> close (GH-9437) 2018-09-20 01:17:09 -04:00
asyncio-platforms.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-policy.rst closes bpo-38692: Add a pidfd child process watcher to asyncio. (GH-17069) 2019-11-13 19:08:50 -08:00
asyncio-protocol.rst bpo-38652: Remove provisional note for asyncio.BufferedProtocol (GH-17047) 2019-12-07 04:53:12 -08:00
asyncio-queue.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-stream.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
asyncio-subprocess.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-sync.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio-task.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncio.rst docs: Add asyncio source code links (GH-16640) 2019-10-10 19:18:46 -04:00
asyncore.rst bpo-11233: Create availability directive for documentation (GH-9692) 2018-10-12 16:55:20 +02:00
atexit.rst bpo-31901: atexit callbacks should be run at subinterpreter shutdown (#4611) 2017-12-20 11:17:58 +01:00
audioop.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
audit_events.rst bpo-38892: Improve docs for audit event (GH-17361) 2019-11-26 09:07:48 -08:00
base64.rst bpo-27846: Delete incorrect note in base64 docs (GH-5666) 2018-02-14 03:08:54 +03:00
bdb.rst [3.9] bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-12620) 2019-06-05 18:22:31 +03:00
binary.rst
binascii.rst bpo-22385: Support output separators in hex methods. (#13578) 2019-05-29 11:46:58 -07:00
binhex.rst bpo-29557: Remove ambiguous line in binhex docs (#90) 2017-02-15 01:37:49 +03:00
bisect.rst Issue #26736: Used HTTPS for external links in the documentation if possible. 2016-05-07 10:49:07 +03:00
builtins.rst Issue #24314: Fix doc links for general attributes like __name__, __dict__ 2016-06-18 03:57:31 +00:00
bz2.rst Fix docs bz.open default mode (GH-15100) 2019-09-09 08:49:47 -07:00
calendar.rst Closes bpo-28281: Remove year (1-9999) limits on the weekday() function. (#4109) 2017-10-26 15:34:11 -04:00
cgi.rst bpo-33843: Remove deprecated stuff in cgi module (GH-7662) 2018-06-19 17:28:50 +09:00
cgitb.rst bpo-29920: Document cgitb.text() and cgitb.html() functions (GH-849) 2017-05-05 11:15:12 +03:00
chunk.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
cmath.rst bpo-36908: 'This module is always available' isn't helpful. (#13297) 2019-05-17 15:29:13 +05:30
cmd.rst bpo-35054: Add yet more index entries for symbols. (GH-10121) 2018-10-28 13:41:26 +02:00
code.rst Fix documentation in code.py (GH-17988) 2020-01-15 01:17:25 +05:30
codecs.rst bpo-37330: open() no longer accept 'U' in file mode (GH-16959) 2019-10-28 15:40:08 +01:00
codeop.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
collections.abc.rst bpo-32467: Let collections.abc.ValuesView inherit from Collection (#5152) 2018-01-11 21:53:49 -08:00
collections.rst bpo-38771: Explict test for None in code example (GH-17108) 2019-11-11 16:49:41 -08:00
colorsys.rst Update link in colorsys docs to be https (GH-14062) 2019-06-15 07:09:36 -07:00
compileall.rst bpo-38112: Compileall improvements (GH-16012) 2019-09-26 08:28:26 +02:00
concurrency.rst bpo-37312: Remove _dummy_thread and dummy_threading modules (GH-14143) 2019-06-17 14:18:43 +02:00
concurrent.futures.rst Update concurrent.futures.rst (GH-14061) 2019-06-14 07:39:43 -07:00
concurrent.rst
configparser.rst bpo-21018: added missing documentation about escaping characters for configparser (GH-6137) 2019-09-10 14:51:09 +02:00
constants.rst bpo-35054: Add more index entries for symbols. (GH-10064) 2018-10-26 09:00:49 +03:00
contextlib.rst [3.9] bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-12620) 2019-06-05 18:22:31 +03:00
contextvars.rst bpo-33985: Implement ContextVar.name attribute. (GH-7980) 2018-06-28 13:20:29 -04:00
copy.rst bpo-14112: Allow beginners to explore shallowness in greater depth ;-) (GH-15465) 2019-08-24 11:15:44 -07:00
copyreg.rst Do not use explicit inheritance from object in the documentation. (GH-13936) 2019-06-10 13:35:52 +03:00
crypt.rst bpo-31904: Don't build the _crypt extension on VxWorks (GH-12833) 2019-04-15 11:02:20 +02:00
crypto.rst Issue #29062: Merge hashlib-blake2.rst into hashlib.rst 2017-01-13 19:29:58 +09:00
csv.rst bpo-27497: Add return value to csv.DictWriter.writeheader (GH-12306) 2019-05-10 03:50:11 +02:00
ctypes.rst Fix typos and remove deprecated deprecation warning. (GH-17741) 2019-12-29 22:14:22 +00:00
curses.ascii.rst bpo-35054: Add yet more index entries for symbols. (GH-10121) 2018-10-28 13:41:26 +02:00
curses.panel.rst bpo-30872: Update the curses docs to Python 3. (#2620) 2017-10-04 22:44:13 +03:00
curses.rst bpo-38312: Add curses.{get,set}_escdelay and curses.{get,set}_tabsize. (GH-16938) 2019-10-31 11:13:48 +02:00
custominterp.rst
dataclasses.rst bpo-33961: Adjusted dataclasses docs to correct exceptions raised. (GH-7917) (GH-17677) 2019-12-25 17:45:30 -05:00
datatypes.rst bpo-33602: Doc: Remove set and queue references from Data Types (GH-7055) 2019-09-10 17:11:16 +02:00
datetime.rst [typo] fix dupe in datetime.fromisoformat docs (GH-17295) 2019-12-23 06:37:47 -08:00
dbm.rst bpo-33106: change dbm key deletion error for readonly file from KeyError to dbm.error (#6295) 2018-12-12 20:46:55 +08:00
debug.rst bpo-37390: Add audit event table to documentations (GH-14406) 2019-06-27 10:47:59 -07:00
decimal.rst bpo-26256: Document algorithm speed for the Decimal module. (#4808) 2019-02-02 15:37:39 +01:00
development.rst bpo-32101: Add PYTHONDEVMODE environment variable (#4624) 2017-11-30 11:40:24 +01:00
dialog.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
difflib.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
dis.rst bpo-39156: Break up COMPARE_OP into four logically distinct opcodes. (GH-17754) 2020-01-14 10:12:45 +00:00
distribution.rst bpo-33503: Fix the broken pypi link in the source and the documentation (GH-6814) 2018-05-15 14:58:35 -04:00
distutils.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
doctest.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
email.charset.rst bpo-26441: Remove documentation for deleted to_splittable and from_splittable methods (#9865) 2018-10-18 20:13:23 -04:00
email.compat32-message.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
email.contentmanager.rst bpo-30820: Remove incorrect docs for email.contentmanager.raw_data_manager (#7631) 2018-06-11 10:47:47 -04:00
email.encoders.rst Fix typos in comments, docs and test names (#15018) 2019-07-30 18:16:13 -04:00
email.errors.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
email.examples.rst bpo-33641: Convert RFC references into links. (GH-7103) 2018-05-31 07:39:00 +03:00
email.generator.rst Fix typos in Doc/library/email.generator.rst documentation (GH-13539) 2019-05-24 09:50:35 -04:00
email.header.rst #24277: The new email API is no longer provisional. 2016-09-07 21:15:59 -04:00
email.headerregistry.rst bpo-35805: Add parser for Message-ID email header. (GH-13397) 2019-06-04 10:41:34 -07:00
email.iterators.rst Issue #27209: Fix doctests in Doc/library/email*.rst 2016-08-10 00:39:41 -05:00
email.message.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
email.mime.rst Fix typos in multiple .rst files (#1668) 2017-05-19 23:37:57 +03:00
email.parser.rst Correct a couple of unbalanced parenthesis. (GH-10779) 2018-12-05 21:45:30 +02:00
email.policy.rst Fix typos in multiple .rst files (#1668) 2017-05-19 23:37:57 +03:00
email.rst bpo-35035: Rename email.utils documentation to email.utils.rst (GH-10023) 2018-11-21 13:41:07 +01:00
email.utils.rst bpo-38421: Update email.utils documentation (GH-16678) 2019-11-12 04:38:46 -08:00
ensurepip.rst bpo-39183: Fix formatting in library/ensurepip (GH-17787) 2020-01-01 14:26:33 -08:00
enum.rst bpo-39234: enum.auto() default initial value as 1 (GH-17878) 2020-01-06 14:04:43 -08:00
errno.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
exceptions.rst Doc: update PendingDeprecationWarning explanation (GH-12837) 2019-04-15 22:40:23 +10:00
faulthandler.rst bpo-38203: faulthandler.dump_traceback_later() is always available (GH-16249) 2019-09-18 14:15:10 +02:00
fcntl.rst bpo-38602: Add fcntl.F_OFD_XXXX for fcntlmodule (GH-16956) 2019-10-28 09:31:15 +02:00
filecmp.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
fileformats.rst
fileinput.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
filesys.rst bpo-35471: Remove the macpath module (GH-11129) 2018-12-14 13:37:26 +01:00
fnmatch.rst glob uses fnmatch.filter instead of fnmatch since 2001. (GH-10102) 2018-11-07 20:09:11 +02:00
formatter.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
fractions.rst bpo-37819: Add Fraction.as_integer_ratio() (GH-15212) 2019-08-11 14:40:59 -07:00
frameworks.rst
ftplib.rst bpo-39259: ftplib.FTP/FTP_TLS now reject timeout = 0 (GH-17959) 2020-01-13 20:34:34 +01:00
functional.rst
functions.rst bpo-12159: Document sys.maxsize limit in len() function reference (GH-17934) 2020-01-12 10:04:14 +01:00
functools.rst bpo-21767: explicitly mention abc support in functools.singledispatch docs (#17171) 2019-11-19 09:16:46 +01:00
gc.rst bpo-39322: Add gc.is_finalized to check if an object has been finalised by the gc (GH-17989) 2020-01-14 12:06:45 +00:00
getopt.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
getpass.rst bpo-32651 Recommend getpass.getuser() (#5301) 2018-01-24 12:51:29 -05:00
gettext.rst DOC: Unnecessary plural. (GH-13613) 2019-05-28 10:35:25 +02:00
glob.rst Doc: recursive glob ** follows symlinks to directories (GH-12918) 2019-09-11 19:17:05 +02:00
grp.rst Merge Issue #22558. 2016-06-11 15:06:08 -04:00
gzip.rst bpo-28286: Deprecate opening GzipFile for writing implicitly. (GH-16417) 2019-11-16 18:56:57 +02:00
hashlib-blake2-tree.png bpo-30660: Doc: Optimize PNG files by optipng (GH-8032) 2018-07-01 16:02:52 +09:00
hashlib.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
heapq.rst fix dangling keyfunc examples in documentation of heapq and sorted (#1432) 2018-10-15 13:06:53 -06:00
hmac.rst bpo-33604: Raise TypeError on missing hmac arg. (GH-16805) 2019-10-17 20:30:42 -07:00
html.entities.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
html.parser.rst Issue #26462: Doc: reduce literal_block warnings, fix syntax highlighting. 2016-07-26 11:18:21 +02:00
html.rst bpo-31865: Fix a couple of typos in the html.unescape() docs. (GH-9662) 2018-10-01 17:34:46 -07:00
http.client.rst Update the URL for the requests package (GH-17006) 2019-10-31 05:01:44 -07:00
http.cookiejar.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
http.cookies.rst bpo-11001: updated cookie docs (GH-13086) 2019-05-07 10:05:20 -07:00
http.rst bpo-38696: Fix usage example of HTTPStatus (GH-17066) 2019-11-05 17:29:33 -06:00
http.server.rst bpo-35292: Avoid calling mimetypes.init when http.server is imported (GH-17822) 2020-01-08 10:28:14 -08:00
i18n.rst
idle.rst Minor formatting improvements and fixes to idle.rst (GH-17165) 2020-01-05 18:51:48 -05:00
imaplib.rst bpo-38615: Add timeout parameter for IMAP4 and IMAP4_SSL constructor (GH-17203) 2020-01-07 18:28:10 +01:00
imghdr.rst Issue #28228: imghdr now supports pathlib 2016-10-01 05:01:54 +03:00
imp.rst bpo-35325: Doc: imp.find_module() return value documentation discrepancy (GH-11040) 2019-09-12 14:10:50 +02:00
importlib.metadata.rst links in importlib.metadata.rst replaced with sphinx references (GH-17730) 2019-12-29 12:26:35 -05:00
importlib.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
index.rst bpo-34717: Stop numbering stdlib titles/sections in the docs (GH-9370) 2018-09-17 18:12:21 -04:00
inspect.rst bpo-38918: Add __module__ entry for function & method type in inspect docs table (GH-17408) 2019-12-20 11:18:33 -08:00
internet.rst
intro.rst bpo-11233: Create availability directive for documentation (GH-9692) 2018-10-12 16:55:20 +02:00
io.rst Improve the io module documentation (GH-15099) 2019-09-11 15:55:13 +01:00
ipaddress.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
ipc.rst bpo-33649: Fix asyncio-dev (GH-9324) 2018-09-14 16:57:11 -07:00
itertools.rst Convert argument to snake_case (GH-16990) 2019-11-02 12:09:14 -07:00
json.rst bpo-29636: json.tool: Add document for indentation options. (GH-17482) 2019-12-07 23:14:40 +09:00
keyword.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
language.rst
linecache.rst bpo-21063: Improve module synopsis for distutils (GH-17363) 2019-11-25 14:17:59 -08:00
locale.rst bpo-28604: Fix localeconv() for different LC_MONETARY (GH-10606) 2018-11-20 16:20:16 +01:00
logging.config.rst bpo-35722: Updated the documentation for the 'disable_existing_loggers' parameter (GH-11525) 2019-01-23 07:12:39 +00:00
logging.handlers.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
logging.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
lzma.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
mailbox.rst bpo-30088: Document that existing dir structure isn't verified by mailbox.Maildir (GH-1163) 2019-07-13 07:47:14 -07:00
mailcap.rst Issue #23921: Standardized documentation whitespace formatting. 2016-05-10 12:01:23 +03:00
markup.rst
marshal.rst bpo-29746: Update marshal docs to Python 3. (#547) 2017-03-12 08:53:22 +02:00
math.rst bpo-39310: Add math.ulp(x) (GH-17965) 2020-01-13 12:44:35 +01:00
mimetypes.rst bpo-4963: Fix for initialization and non-deterministic behavior issues in mimetypes (GH-3062) 2019-06-24 16:46:59 -07:00
misc.rst
mm.rst
mmap.rst bpo-37390: Add audit event table to documentations (GH-14406) 2019-06-27 10:47:59 -07:00
modulefinder.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
modules.rst bpo-34632: Add importlib.metadata (GH-12547) 2019-05-24 16:59:01 -07:00
msilib.rst Remove outdated .pyo reference from msilib docs (GH-4461) 2017-11-19 13:04:25 +03:00
msvcrt.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
multiprocessing.rst Fix typo in multiprocessing.pool.AsyncResult.successful doc. (GH-17932) 2020-01-15 12:12:41 -08:00
multiprocessing.shared_memory.rst bpo-36364: fix SharedMemoryManager examples (GH-12439) 2019-03-26 12:12:26 -07:00
netdata.rst
netrc.rst bpo-28334: netrc() now uses expanduser() to find .netrc file (GH-4537) 2017-11-25 13:37:22 +03:00
nis.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
nntplib.rst bpo-39259: nntplib.NNTP/NNTP_SSL now reject timeout = 0 (GH-17936) 2020-01-11 18:39:15 +01:00
numbers.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
numeric.rst
operator.rst bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-13700) 2019-06-01 11:00:15 +03:00
optparse.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
os.path.rst Doc: Improve consistency of os.path.normcase with other os.path functions (GH-14004) 2019-09-13 14:01:02 +01:00
os.rst bpo-38778: Document that os.fork is not allowed in subinterpreters (GH-17123) 2019-11-15 08:56:03 -08:00
ossaudiodev.rst bpo-35110: Fix unintentional spaces around hyphens and dashes. (GH-10231) 2018-10-31 02:26:06 +02:00
othergui.rst bpo-25910: Fixes redirection from http to https (#4674) 2017-12-06 17:39:33 +01:00
parser.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
pathlib-inheritance.png bpo-20001: update pathlib landing image (GH-11304) 2019-02-05 19:16:13 +09:00
pathlib-inheritance.svg bpo-20001: update pathlib landing image (GH-11304) 2019-02-05 19:16:13 +09:00
pathlib.rst bpo-30618: add readlink to pathlib.Path (GH-8285) 2019-10-23 14:18:40 -07:00
pdb.rst bpo-36277: Add document for pdb debug and retval commands (GH-12872) 2019-11-20 17:49:15 -08:00
persistence.rst
pickle.rst bpo-38388: Document pickle protocol version 5 (GH-16639) 2019-11-03 13:55:33 +02:00
pickletools.rst Fix indentation 2016-11-21 13:36:36 +00:00
pipes.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
pkgutil.rst bpo-35042: Use the :pep: role where a PEP is specified (#10036) 2018-10-26 15:58:26 -07:00
platform.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
plistlib.rst Slightly improve plistlib test coverage. (GH-17025) 2019-11-01 18:45:01 +02:00
poplib.rst bpo-39259: poplib now rejects timeout = 0 (GH-17912) 2020-01-10 15:34:05 +01:00
posix.rst bpo-27961: Remove leftovers from the times when long long wasn't required (GH-15388) 2019-08-22 16:28:28 +01:00
pprint.rst bpo-37376: pprint support for SimpleNamespace (GH-14318) 2019-06-26 16:13:18 -07:00
profile.rst bpo-37958: Adding get_profile_dict to pstats (GH-15495) 2020-01-15 14:51:54 -08:00
pty.rst bpo-22865: Expand on documentation for the pty.spawn function (GH-11980) 2019-05-20 17:06:16 +02:00
pwd.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
py_compile.rst bpo-38731: Fix function signature of quiet in docs (GH-17719) 2019-12-28 02:53:03 +00:00
pyclbr.rst bpo-36766: Typos in docs and code comments (GH-13116) 2019-05-06 14:57:17 -04:00
pydoc.rst bpo-31128: Allow pydoc to bind to arbitrary hostnames (#3011) 2017-09-14 17:54:09 -04:00
pyexpat.rst bpo-30380: Fix Sphinx 1.6.1 warnings. (#1613) 2017-05-16 23:18:09 +03:00
python.rst bpo-32216: Add documentation for dataclasses (GH-6886) 2018-05-16 04:20:43 -04:00
queue.rst Add note to Queue.get() docs about block=True (GH-2223) 2019-03-25 12:55:20 -07:00
quopri.rst bpo-32701: Clarify the quotetabs flag in quopri documentation (GH-5401) 2018-01-29 19:36:06 -08:00
random.rst bpo-38881: choices() raises ValueError when all weights are zero (GH-17362) 2019-11-23 02:22:13 -08:00
re.rst bpo-38294: Add list of no-longer-escaped chars to re.escape documentation. (GH-16442) 2019-10-07 23:54:35 +03:00
readline.rst Docs: FIX broken links. (GH-13491) 2019-05-25 20:02:24 +02:00
reprlib.rst bpo-9842: Add references for using "..." as a placeholder to the index. (GH-10330) 2018-11-20 19:26:09 +02:00
resource.rst bpo-31904: Port test_resource to VxWorks (GH-12719) 2019-04-17 17:41:33 +02:00
rlcompleter.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
runpy.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
sched.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
secrets.rst import secrets module in secrets recipes (#6705) 2018-05-20 01:01:49 +10:00
select.rst bpo-39239: epoll.unregister() no longer ignores EBADF (GH-17882) 2020-01-07 15:00:02 +01:00
selectors.rst Fix typo in selectors.rst (#1383) 2017-05-02 06:27:57 -07:00
shelve.rst Issue #19795: Mark up True and False as literal text instead of bold. 2016-10-19 16:43:42 +03:00
shlex.rst bpo-35168: Make shlex.punctuation_chars read-only (#11631) 2019-09-11 12:04:04 +01:00
shutil.rst bpo-32689: Updates shutil.move to allow for Path objects to be used as source arg (GH-15326) 2019-09-30 19:41:16 -07:00
signal.rst closes bpo-38712: Add signal.pidfd_send_signal. (GH-17070) 2019-11-19 20:39:14 -08:00
site.rst bpo-38623: Doc: Add section for site module CLI. (GH-17858) 2020-01-07 16:58:40 +09:00
smtpd.rst bpo-35800: Deprecate smtpd.MailmanProxy (GH-11675) 2019-10-12 10:24:26 -07:00
smtplib.rst bpo-39329: Add timeout parameter for smtplib.LMTP constructor (GH-17998) 2020-01-14 22:42:09 +01:00
sndhdr.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
socket.rst Remove use of deprecated array.fromstring method (GH-17332) 2019-11-26 15:31:09 +09:00
socketserver.rst bpo-35506: Remove redundant and incorrect links from keywords. (GH-11174) 2018-12-19 08:09:46 +02:00
spwd.rst Merge Issue #22558. 2016-06-11 15:06:08 -04:00
sqlite3.rst bpo-37390: Add audit event table to documentations (GH-14406) 2019-06-27 10:47:59 -07:00
ssl.rst bpo-38820: OpenSSL 3.0.0 compatibility. (GH-17190) 2019-12-07 08:59:36 -08:00
stat.rst bpo-37834: Normalise handling of reparse points on Windows (GH-15231) 2019-08-21 15:27:33 -07:00
statistics.rst bpo-21063: Improve module synopsis for distutils (GH-17363) 2019-11-25 14:17:59 -08:00
stdtypes.rst bpo-39130: Dict reversed was added in v3.8 so should say in the doc as well (GH-17694) 2020-01-05 14:39:38 -08:00
string.rst bpo-32790: Add info about alt format using # for 'g' in chart (GH-6624) 2019-09-13 18:20:21 +01:00
stringprep.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
struct.rst bpo-27961: Remove leftovers from the times when long long wasn't required (GH-15388) 2019-08-22 16:28:28 +01:00
subprocess.rst bpo-38630: Fix subprocess.Popen.send_signal() race condition (GH-16984) 2020-01-15 17:38:55 +01:00
sunau.rst bpo-37320: Remove openfp() of aifc, sunau and wave (GH-14169) 2019-06-18 00:00:24 +02:00
superseded.rst
symbol.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
symtable.rst bpo-34983: Expose symtable.Symbol.is_nonlocal() in the symtable module (GH-9872) 2018-10-20 01:46:00 +01:00
sys.rst bpo-39310: Add math.ulp(x) (GH-17965) 2020-01-13 12:44:35 +01:00
sysconfig.rst Correct a couple of unbalanced parenthesis. (GH-10779) 2018-12-05 21:45:30 +02:00
syslog.rst Fix "Python" casing in a few places (GH-9001) 2018-09-14 10:13:09 -07:00
tabnanny.rst fix function name in tabnanny documentation (GH-759) 2017-03-22 14:53:57 +08:00
tarfile.rst bpo-37408: Precise that Tarfile "format" argument only concerns writing. (GH-14389) 2019-09-28 08:04:44 -07:00
telnetlib.rst bpo-37823: Fix open() link in telnetlib doc (GH-15281) 2019-08-21 12:13:34 +01:00
tempfile.rst bpo-26730: Fix SpooledTemporaryFile data corruption (GH-17400) 2019-11-27 22:22:06 +09:00
termios.rst bpo-35110: Fix unintentional spaces around hyphens and dashes. (GH-10231) 2018-10-31 02:26:06 +02:00
test.rst bpo-39136: Fixed typos (GH-17720) 2019-12-28 17:16:02 -05:00
text.rst
textwrap.rst bpo-30754: Document textwrap.dedent blank line behavior. (GH-14469) 2019-06-29 21:20:03 -07:00
threading.rst document threading.Lock.locked() (GH-17427) 2019-12-01 22:07:39 +02:00
time.rst closes bpo-39135: Remove 'time.clock()' mention in docs. (GH17709) 2019-12-26 21:01:08 -06:00
timeit.rst bpo-35138: Added an example for timeit.timeit with callable arguments (GH-9787) 2019-05-13 21:27:17 +02:00
tk.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tk_msg.png bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.colorchooser.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.dnd.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.font.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.messagebox.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.scrolledtext.rst bpo-25237: Documentation for tkinter modules (GH-1870) 2019-09-10 10:55:34 +02:00
tkinter.tix.rst bpo-23156: Remove obsolete tix install directions (GH-11595) 2019-01-17 19:00:51 -05:00
tkinter.ttk.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
token-list.inc bpo-35975: Support parsing earlier minor versions of Python 3 (GH-12086) 2019-03-07 12:38:08 -08:00
token.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
tokenize.rst bpo-5028: Fix up rest of documentation for tokenize documenting line (GH-13686) 2019-05-30 15:06:32 -07:00
trace.rst [3.9] bpo-37116: Use PEP 570 syntax for positional-only parameters. (GH-12620) 2019-06-05 18:22:31 +03:00
traceback.rst bpo-35054: Add yet more index entries for symbols. (GH-10121) 2018-10-28 13:41:26 +02:00
tracemalloc.rst bpo-37961, tracemalloc: add Traceback.total_nframe (GH-15545) 2019-10-15 14:00:16 +02:00
tty.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
tulip_coro.dia
tulip_coro.png bpo-30660: Doc: Optimize PNG files by optipng (GH-8032) 2018-07-01 16:02:52 +09:00
turtle-star.pdf
turtle-star.png bpo-30660: Doc: Optimize PNG files by optipng (GH-8032) 2018-07-01 16:02:52 +09:00
turtle-star.ps
turtle.rst Doc: Correct the creation year and the credits of the Logo Programming language (GH-13520) 2019-06-01 07:41:33 -04:00
types.rst Document CodeType.replace (GH-17776) 2020-01-01 06:11:16 +00:00
typing.rst bpo-38467: Fix argument name of typing functions (GH-16753) 2019-10-13 19:31:35 +01:00
undoc.rst Issue #27355: Removed support for Windows CE. It was never finished, 2016-09-05 15:11:23 -07:00
unicodedata.rst bpo-36502: Update link to UAX #44, the Unicode doc on the UCD. (GH-15301) 2019-09-09 09:37:13 -07:00
unittest.mock-examples.rst bpo-38093: Correctly returns AsyncMock for async subclasses. (GH-15947) 2019-09-19 21:04:18 -07:00
unittest.mock.rst Fix AsyncMock base class in the docs (GH-18008) 2020-01-15 09:50:57 +00:00
unittest.rst Add missing comma and period in unittest docs (GH-17211) 2019-11-19 04:05:45 -08:00
unix.rst
urllib.error.rst bpo-33641: Convert RFC references into links. (GH-7103) 2018-05-31 07:39:00 +03:00
urllib.parse.rst Minor doc fixes in urllib.parse (GH-17745) 2019-12-31 04:28:18 -08:00
urllib.request.rst Update the URL for the requests package (GH-17006) 2019-10-31 05:01:44 -07:00
urllib.robotparser.rst bpo-21475: Support the Sitemap extension in robotparser (GH-6883) 2018-05-16 10:52:07 -04:00
urllib.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
uu.rst bpo-30103: Allow Uuencode in Python using backtick as zero instead of space (#1326) 2017-05-03 11:16:21 +08:00
uuid.rst bpo-33640, uuid.UUID doc: document endian of bytes parameter (GH-7263) 2018-06-04 09:29:00 +02:00
venv.rst bpo-38901: Allow setting a venv's prompt to the basename of the current directory. (GH-17946) 2020-01-14 20:49:30 +00:00
warnings.rst bpo-35563: Add reference links to warnings.rst (GH-11289) 2019-05-20 18:45:05 -04:00
wave.rst bpo-37320: Remove openfp() of aifc, sunau and wave (GH-14169) 2019-06-18 00:00:24 +02:00
weakref.rst Update weakref.rst (GH-14098) 2019-06-15 04:33:23 -07:00
webbrowser.rst bpo-37390: Add audit event table to documentations (GH-14406) 2019-06-27 10:47:59 -07:00
windows.rst
winreg.rst bpo-39007: Add auditing events to functions in winreg (GH-17541) 2019-12-09 11:18:12 -08:00
winsound.rst Issue #25387: Check return value of winsound.MessageBeep 2016-09-05 17:32:28 -05:00
wsgiref.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
xdrlib.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
xml.dom.minidom.rst bpo-18911: clarify that the minidom XML writer receives texts but not bytes (GH-13352) 2019-06-01 08:33:16 +02:00
xml.dom.pulldom.rst Fix Python version since which external enities are not resolved by default. (GH-11237) 2018-12-19 15:29:04 +02:00
xml.dom.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
xml.etree.elementtree.rst bpo-38738: Fix formatting of True and False. (GH-17083) 2019-11-12 16:57:03 +02:00
xml.rst Fix Python version since which external enities are not resolved by default. (GH-11237) 2018-12-19 15:29:04 +02:00
xml.sax.handler.rst Issue #22558: Add remaining doc links to source code for Python-coded modules. 2016-06-11 15:02:54 -04:00
xml.sax.reader.rst bpo-31658: Make xml.sax.parse accepting Path objects (GH-8564) 2019-04-14 11:16:54 +02:00
xml.sax.rst Fix Python version since which external enities are not resolved by default. (GH-11237) 2018-12-19 15:29:04 +02:00
xml.sax.utils.rst Issue #19795: Mark up True and False as literal text instead of bold. 2016-10-19 16:43:42 +03:00
xmlrpc.client.rst bpo-35153: Add headers parameter to xmlrpc.client.ServerProxy (GH-10308) 2019-02-19 17:18:50 +01:00
xmlrpc.rst
xmlrpc.server.rst bpo-7769: enable xmlrpc.server.SimpleXMLRPCDispatcher.register_function used as decorator (GH-231) 2017-02-28 17:12:52 +08:00
zipapp.rst bpo-34906: Doc: Fix typos (GH-9712) 2018-10-05 16:17:18 +02:00
zipfile.rst bpo-38526: Fix zipfile.Path method name to be the correct one (#17317) 2019-11-21 16:23:13 -05:00
zipimport.rst bpo-21063: Improve module synopsis for distutils (GH-17363) 2019-11-25 14:17:59 -08:00
zlib.rst Add link to zlib v1.1.3 vulnerability (GH-17156) 2020-01-03 13:10:16 +01:00