1 .. _library-intro: 2 3 ************ 4 Introduction 5 ************ 6 7 The "Python library" contains several different kinds of components. 8 9 It contains data types that would normally be considered part of the "core" of a 10 language, such as numbers and lists. For these types, the Python language core 11 defines the form of literals and places some constraints on their semantics, but 12 does not fully define the semantics. (On the other hand, the language core does 13 define syntactic properties like the spelling and priorities of operators.) 14 15 The library also contains built-in functions and exceptions --- objects that can 16 be used by all Python code without the need of an :keyword:`import` statement. 17 Some of these are defined by the core language, but many are not essential for 18 the core semantics and are only described here. 19 20 The bulk of the library, however, consists of a collection of modules. There are 21 many ways to dissect this collection. Some modules are written in C and built 22 in to the Python interpreter; others are written in Python and imported in 23 source form. Some modules provide interfaces that are highly specific to 24 Python, like printing a stack trace; some provide interfaces that are specific 25 to particular operating systems, such as access to specific hardware; others 26 provide interfaces that are specific to a particular application domain, like 27 the World Wide Web. Some modules are available in all versions and ports of 28 Python; others are only available when the underlying system supports or 29 requires them; yet others are available only when a particular configuration 30 option was chosen at the time when Python was compiled and installed. 31 32 This manual is organized "from the inside out:" it first describes the built-in 33 functions, data types and exceptions, and finally the modules, grouped in 34 chapters of related modules. 35 36 This means that if you start reading this manual from the start, and skip to the 37 next chapter when you get bored, you will get a reasonable overview of the 38 available modules and application areas that are supported by the Python 39 library. Of course, you don't *have* to read it like a novel --- you can also 40 browse the table of contents (in front of the manual), or look for a specific 41 function, module or term in the index (in the back). And finally, if you enjoy 42 learning about random subjects, you choose a random page number (see module 43 :mod:`random`) and read a section or two. Regardless of the order in which you 44 read the sections of this manual, it helps to start with chapter 45 :ref:`built-in-funcs`, as the remainder of the manual assumes familiarity with 46 this material. 47 48 Let the show begin! 49 50 51 .. _availability: 52 53 Notes on availability 54 ===================== 55 56 * An "Availability: Unix" note means that this function is commonly found on 57 Unix systems. It does not make any claims about its existence on a specific 58 operating system. 59 60 * If not separately noted, all functions that claim "Availability: Unix" are 61 supported on Mac OS X, which builds on a Unix core. 62 63