通用作業系統服務
****************

此章節所描述的模組 (module) 提供了作業系統特性的使用介面，例如檔案與時
鐘，（幾乎）在所有作業系統上皆能使用。這些介面通常是參考 Unix 或 C 的
介面來實作，不過在其他大多數系統上也能使用。以下為概述：

* "os" --- 各種作業系統介面

  * File Names, Command Line Arguments, and Environment Variables

  * Python UTF-8 模式

  * 行程參數

  * File Object Creation

  * File Descriptor Operations

    * Querying the size of a terminal

    * Inheritance of File Descriptors

  * Files and Directories

    * Timer File Descriptors

    * Linux extended attributes

  * 行程管理

  * Interface to the scheduler

  * Miscellaneous System Information

  * Random numbers

* "io" — 處理資料串流的核心工具

  * 總覽

    * 文字 I/O

    * 二進位 (Binary) I/O

    * 原始 (Raw) I/O

  * 文字編碼

    * 選擇性加入的編碼警告

  * 高階模組介面

  * 類別階層

    * I/O 基礎類別

    * 原始檔案 I/O

    * Buffered Streams

    * 文字 I/O

  * Performance

    * 二進位 (Binary) I/O

    * 文字 I/O

    * Multi-threading

    * Reentrancy

* "time" --- 時間存取與轉換

  * 函式

  * Clock ID Constants

  * Timezone Constants

* "argparse" --- Parser for command-line options, arguments and sub-
  commands

  * Core Functionality

  * Quick Links for add_argument()

  * 範例

    * 建立一個剖析器

    * 增加引數

    * 剖析引數

  * ArgumentParser 物件

    * prog

    * usage

    * 描述

    * epilog

    * parents

    * formatter_class

    * prefix_chars

    * fromfile_prefix_chars

    * argument_default

    * allow_abbrev

    * conflict_handler

    * add_help

    * exit_on_error

  * The add_argument() method

    * name or flags

    * action

    * nargs

    * const

    * default

    * type

    * choices

    * required

    * 幫助

    * metavar

    * dest

    * deprecated

    * Action classes

  * The parse_args() method

    * Option value syntax

    * Invalid arguments

    * Arguments containing "-"

    * Argument abbreviations (prefix matching)

    * Beyond "sys.argv"

    * The Namespace object

  * Other utilities

    * Sub-commands

    * FileType 物件

    * Argument groups

    * Mutual exclusion

    * Parser defaults

    * Printing help

    * Partial parsing

    * Customizing file parsing

    * Exiting methods

    * Intermixed parsing

  * Upgrading optparse code

  * Exceptions

* "logging" --- Python 的日誌記錄工具

  * Logger 物件

  * Logging Levels

  * Handler Objects

  * Formatter Objects

  * Filter Objects

  * LogRecord 物件

  * LogRecord attributes

  * LoggerAdapter 物件

  * Thread Safety

  * Module-Level Functions

  * Module-Level Attributes

  * Integration with the warnings module

* "logging.config" --- 日誌記錄配置

  * Configuration functions

  * Security considerations

  * Configuration dictionary schema

    * Dictionary Schema Details

    * Incremental Configuration

    * Object connections

    * User-defined objects

    * Handler configuration order

    * Access to external objects

    * Access to internal objects

    * Import resolution and custom importers

    * Configuring QueueHandler and QueueListener

  * Configuration file format

* "logging.handlers" --- 日誌紀錄處理器

  * StreamHandler

  * FileHandler

  * NullHandler

  * WatchedFileHandler

  * BaseRotatingHandler

  * RotatingFileHandler

  * TimedRotatingFileHandler

  * SocketHandler

  * DatagramHandler

  * SysLogHandler

  * NTEventLogHandler

  * SMTPHandler

  * MemoryHandler

  * HTTPHandler

  * QueueHandler

  * QueueListener

* "getpass" --- 可攜式密碼輸入工具

* "curses" --- 字元儲存格顯示的終端處理

  * 函式

  * Window Objects

  * Constants

* "curses.textpad" --- Text input widget for curses programs

  * Textbox objects

* "curses.ascii" --- ASCII 字元的工具程式

* "curses.panel" --- curses 的面板堆疊擴充

  * 函式

  * Panel Objects

* "platform" ---  對底層平臺識別資料的存取

  * 跨平台

  * Java 平台

  * Windows 平台

  * macOS 平台

  * iOS 平台

  * Unix 平台

  * Linux 平台

  * Android 平台

* "errno" --- 標準 errno 系統符號

* "ctypes" --- 用於 Python 的外部函式庫

  * ctypes 教學

    * Loading dynamic link libraries

    * Accessing functions from loaded dlls

    * 呼叫函式

    * Fundamental data types

    * Calling functions, continued

    * Calling variadic functions

    * Calling functions with your own custom data types

    * Specifying the required argument types (function prototypes)

    * Return types

    * Passing pointers (or: passing parameters by reference)

    * Structures and unions

    * Structure/union alignment and byte order

    * Bit fields in structures and unions

    * Arrays

    * Pointers

    * Type conversions

    * Incomplete Types

    * 回呼函式

    * Accessing values exported from dlls

    * Surprises

    * Variable-sized data types

  * ctypes reference

    * Finding shared libraries

    * Loading shared libraries

    * Foreign functions

    * Function prototypes

    * Utility functions

    * Data types

    * Fundamental data types

    * Structured data types

    * Arrays and pointers
