15. Generic Operating System Services
The modules described in this chapter provide interfaces to operating system features that are available on (almost) all operating systems, such as files and a clock. The interfaces are generally modeled after the Unix or C interfaces, but they are available on most other systems as well. Here’s an overview:
- 15.1. os — Miscellaneous operating system interfaces
- 15.2. io — Core tools for working with streams
- 15.3. time — Time access and conversions
- 15.4. argparse — Parser for command line options, arguments and sub-commands
- 15.5. optparse — Parser for command line options
- 15.5.1. Background
- 15.5.2. Tutorial
- 15.5.3. Reference Guide
- 15.5.3.1. Creating the parser
- 15.5.3.2. Populating the parser
- 15.5.3.3. Defining options
- 15.5.3.4. Option attributes
- 15.5.3.5. Standard option actions
- 15.5.3.6. Standard option types
- 15.5.3.7. Parsing arguments
- 15.5.3.8. Querying and manipulating your option parser
- 15.5.3.9. Conflicts between options
- 15.5.3.10. Cleanup
- 15.5.3.11. Other methods
- 15.5.4. Option Callbacks
- 15.5.4.1. Defining a callback option
- 15.5.4.2. How callbacks are called
- 15.5.4.3. Raising errors in a callback
- 15.5.4.4. Callback example 1: trivial callback
- 15.5.4.5. Callback example 2: check option order
- 15.5.4.6. Callback example 3: check option order (generalized)
- 15.5.4.7. Callback example 4: check arbitrary condition
- 15.5.4.8. Callback example 5: fixed arguments
- 15.5.4.9. Callback example 6: variable arguments
- 15.5.5. Extending optparse
- 15.6. getopt — C-style parser for command line options
- 15.7. logging — Logging facility for Python
- 15.8. logging.config — Logging configuration
- 15.9. logging.handlers — Logging handlers
- 15.9.1. StreamHandler
- 15.9.2. FileHandler
- 15.9.3. NullHandler
- 15.9.4. WatchedFileHandler
- 15.9.5. RotatingFileHandler
- 15.9.6. TimedRotatingFileHandler
- 15.9.7. SocketHandler
- 15.9.8. DatagramHandler
- 15.9.9. SysLogHandler
- 15.9.10. NTEventLogHandler
- 15.9.11. SMTPHandler
- 15.9.12. MemoryHandler
- 15.9.13. HTTPHandler
- 15.9.14. QueueHandler
- 15.9.15. QueueListener
- 15.10. getpass — Portable password input
- 15.11. curses — Terminal handling for character-cell displays
- 15.12. curses.textpad — Text input widget for curses programs
- 15.13. curses.wrapper — Terminal handler for curses programs
- 15.14. curses.ascii — Utilities for ASCII characters
- 15.15. curses.panel — A panel stack extension for curses
- 15.16. platform — Access to underlying platform’s identifying data
- 15.17. errno — Standard errno system symbols
- 15.18. ctypes — A foreign function library for Python
- 15.18.1. ctypes tutorial
- 15.18.1.1. Loading dynamic link libraries
- 15.18.1.2. Accessing functions from loaded dlls
- 15.18.1.3. Calling functions
- 15.18.1.4. Fundamental data types
- 15.18.1.5. Calling functions, continued
- 15.18.1.6. Calling functions with your own custom data types
- 15.18.1.7. Specifying the required argument types (function prototypes)
- 15.18.1.8. Return types
- 15.18.1.9. Passing pointers (or: passing parameters by reference)
- 15.18.1.10. Structures and unions
- 15.18.1.11. Structure/union alignment and byte order
- 15.18.1.12. Bit fields in structures and unions
- 15.18.1.13. Arrays
- 15.18.1.14. Pointers
- 15.18.1.15. Type conversions
- 15.18.1.16. Incomplete Types
- 15.18.1.17. Callback functions
- 15.18.1.18. Accessing values exported from dlls
- 15.18.1.19. Surprises
- 15.18.1.20. Variable-sized data types
- 15.18.2. ctypes reference
- 15.18.1. ctypes tutorial