Site Tools


Hotfix release available: 2026-07-14a "Mort". upgrade now! [57.1] (what's this?)
New release available: 2026-07-14 "Mort". upgrade now! [57] (what's this?)
Hotfix release available: 2025-05-14b "Librarian". upgrade now! [56.2] (what's this?)
Hotfix release available: 2025-05-14a "Librarian". upgrade now! [56.1] (what's this?)
New release available: 2025-05-14 "Librarian". upgrade now! [56] (what's this?)
Hotfix release available: 2024-02-06b "Kaos". upgrade now! [55.2] (what's this?)
Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
Hotfix release available: 2023-04-04b "Jack Jackrum". upgrade now! [54.2] (what's this?)
Hotfix release available: 2023-04-04a "Jack Jackrum". upgrade now! [54.1] (what's this?)
New release available: 2023-04-04 "Jack Jackrum". upgrade now! [54] (what's this?)
Hotfix release available: 2022-07-31b "Igor". upgrade now! [53.1] (what's this?)
Hotfix release available: 2022-07-31a "Igor". upgrade now! [53] (what's this?)
New release available: 2022-07-31 "Igor". upgrade now! [52.2] (what's this?)
New release candidate 2 available: rc2022-06-26 "Igor". upgrade now! [52.1] (what's this?)
New release candidate available: 2022-06-26 "Igor". upgrade now! [52] (what's this?)
Hotfix release available: 2020-07-29a "Hogfather". upgrade now! [51.4] (what's this?)
notes:python_cheat_sheet

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
notes:python_cheat_sheet [2026/07/23 01:16]
54.37.252.152 old revision restored (2026/06/22 04:02)
notes:python_cheat_sheet [2026/07/24 15:24] (current)
47.79.201.32 old revision restored (2026/06/21 13:23)
Line 40: Line 40:
   * Lists can be nested.   * Lists can be nested.
   * Other methods include append, pop, extend, index, count, sort, reverse.   * Other methods include append, pop, extend, index, count, sort, reverse.
-  * Lists can be created from sequences e.g <code python>+  * Lists can be created from sequences using list comprehension <code python>
 vec = [2, 4, 6] vec = [2, 4, 6]
-[[x, x**2] for x in vec] +[[x, x**2] for x in vec if x > 2
-[[2, 4], [4, 16], [6, 36]]</code>+[[4, 16], [6, 36]
 +[x+y for x in vec for y in vec2 if x > 2]</code>
   * Other sequence types include tuples ( (1,2) or 1,2) and sets ({1,2} or set(1,2)).   * Other sequence types include tuples ( (1,2) or 1,2) and sets ({1,2} or set(1,2)).
  
Line 54: Line 55:
   * But strings can't be modified using slices or indexes.   * But strings can't be modified using slices or indexes.
   * [[http://docs.python.org/3.0/library/stdtypes.html#string-methods | String methods]] include strip, format, capitalize etc.   * [[http://docs.python.org/3.0/library/stdtypes.html#string-methods | String methods]] include strip, format, capitalize etc.
-  * format-string % (tuple) allows use of printf formatting strings. Also string.format() . 
  
 ===== Control Flow ===== ===== Control Flow =====
Line 77: Line 77:
   * Loops may have else clauses for code executed after normal termination (not a break).   * Loops may have else clauses for code executed after normal termination (not a break).
  
-===== Assorted =====+===== Assorted Collection Stuff =====
  
   * Dictionaries are unordered sets of key value pairs e.g. { a:1, b:2} or dict([(a,1),(b,2)]) or dict(a=1,b=2)   * Dictionaries are unordered sets of key value pairs e.g. { a:1, b:2} or dict([(a,1),(b,2)]) or dict(a=1,b=2)
   * Dictionary keys/values/items can be enumerated over.   * Dictionary keys/values/items can be enumerated over.
 +  * sorted and reversed take in liats and return new lists.
 +  * enumerate takes in a list and returns a list of pairs where the first item in the pair is an integer starting with 0.
 +  * zip takes two or more lists with the same number of elements and creates a single list of lists with corresponding members grouped together.
 +
 +===== Modules & Packages =====
 +
 +  * A //module// is a file of python definitions.
 +  * Definitions in a module can be accessed by importing the module. <code python>import fib
 +from fib import fib1, fib2
 +</code>
 +  * %%__name__%% is set to the name of the module or to %%__main__%% if called from the command line.
 +  * The search list for modules is the variable sys.path initialized from the directory containing the input script (or the current directory), PYTHONPATH and the installation-dependent default.
 +  * When a module is imported, a byte-code version is stored to module.pyc which speeds up successive loads.
 +  * There are many standard modules including sys which is common to all platforms.
 +  * dir(module) lists all names in a module sorted alphabetically. dir(builtins) shows all the built-in functions and variables.
 +  * Packages can be used to group modules. Packages should be in a named directory with an __init__.py file optionally containing initialization code. E.g. import sound.effects.echo .
 +  * . is the current package, .. is the parent package etc.
 +
 +===== Input/Output =====
 +
 +  * str() returns a readable representations, repr() returns a canonical representation
 +  * Strings have several formatting methods. 
 +  * //formatstring.format(tuple)// is the [[http://docs.python.org/3.0/library/string.html#formatspec | new-style printf]] equivalent. The [[http://docs.python.org/3.0/library/stdtypes.html#old-string-formatting | old-style]] was //formatstring % (tuple)// which uses C-type format strings.
 +  * To open a file <code python> open('/tmp/workfile', 'w') </code>
 +  * [[http://docs.python.org/3.0/library/stdtypes.html#file-objects | File methods]] include read, readline, write.
 +  * //pickle// contains load and dump methods for serializing objects. Support should be added for new object types.
notes/python_cheat_sheet.1784794590.txt.gz · Last modified: 2026/07/23 01:16 by 54.37.252.152