Site Tools


Hotfix release available: 2026-07-14c "Mort". upgrade now! [57.3] (what's this?)
Hotfix release available: 2026-07-14b "Mort". upgrade now! [57.2] (what's this?)
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/09/13 22:52]
43.166.174.45 old revision restored (2009/04/02 17:40)
notes:python_cheat_sheet [2026/09/15 03:45] (current)
59.103.33.23 old revision restored (2026/08/06 22:23)
Line 22: Line 22:
   * Imaginary numbers can be created using complex(a,b) or a+bJ. .real and .imag will extract real and imaginary parts.   * Imaginary numbers can be created using complex(a,b) or a+bJ. .real and .imag will extract real and imaginary parts.
   * print("a","b",end="") prints a b with no newline at the end.   * print("a","b",end="") prints a b with no newline at the end.
 +
 +===== Functions =====
 +  * To define a function or procedure <code python>define func(n,str="default"):</code> <code python>define func(formal1, formal2, *arguments **keywords)</code>
 +  * The default value for an argument is evaluated only once when the function is defined.
 +  * All arguments are passed using //call by object reference//. So changes are seen by caller.
 +  * * unpacks a list or dictionary for use in a function.
 +  * lambda x: x + n creates a small anonymous function.
 +  * A function should contain a triply quoted doc string at the start. This is accessible with func.__doc__ .
 +  * 4 spaces per indent, no tabs. CamelCasel for classes lower_case_with_underscores for functions.
  
 ===== Lists ===== ===== Lists =====
Line 27: Line 36:
   * list[4] is 4th element. list[2:4] is second and third elements. list[:2] is first 2 elements. list[2:] is third element to last one. list[:] is the whole list.   * list[4] is 4th element. list[2:4] is second and third elements. list[:2] is first 2 elements. list[2:] is third element to last one. list[:] is the whole list.
   * Negative indexes count from last element.   * Negative indexes count from last element.
-  * List slices can be modified. list[3:3] can be used to insert elements at position 3. list.append() appends to the list.+  * List slices can be modified. list[3:3] can be used to insert elements at position 3.
   * len(list) returns length of the list.   * len(list) returns length of the list.
   * Lists can be nested.   * Lists can be nested.
 +  * Other methods include append, pop, extend, index, count, sort, reverse.
 +  * Lists can be created from sequences e.g <code python>
 +vec = [2, 4, 6]
 +[[x, x**2] for x in vec]
 +[[2, 4], [4, 16], [6, 36]]</code>
 +  * Other sequence types include tuples ( (1,2) or 1,2) and sets ({1,2} or set(1,2)).
  
 ===== Strings ===== ===== Strings =====
Line 43: Line 58:
 ===== Control Flow ===== ===== Control Flow =====
  
 +  * Controlled by level of indentation.
 +  * //pass// is a NOOP .
 +  * <code python>
 +while a<10:
 +  pass</code>
 +  * <code python>
 +for x in list:
 +  pass
 +for x in range(1,5):
 +  pass</code>
 +  * <code python>
 +if a›10:
 +   pass
 +elif a›5:
 +   pass
 +else:</code>
 +  * //break// and //continue// can be used
 +  * Loops may have else clauses for code executed after normal termination (not a break).
 +
 +===== 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)
 +  * 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 =====
  
 +  * 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.
notes/python_cheat_sheet.1789365170.txt.gz · Last modified: 2026/09/13 22:52 by 43.166.174.45