python elements:
- keywords
- symbols
- topics
- modules
variables:
- case sensitive
- start with a letter not a number
- long names are ok
types and operators:
- int
- float
- long
- complex a = (3 + 4j) #type (a)
- airthmetic operators
- assignment operators
- comparison operators: < > = >= == !=
- some have overload abilities +
casts:
- int()
- float()
- long()
- hex() #string representation
- oct() #string rep
- str() # for printig numbers and strings
Built in constants:
Indenting counts:
- indent 4 spaces or a tab
- : at end of line indicates start of code block
- requires next line to be indented
-
- code block ends with an outdent
- check your indents!
-
Program structure
- loops
- conditionals, controls
- functions
-
IDLE:
- syntex color coded
- statement completion
- written in python tkinter gui module???
-
dir()
- gives you a list of the variables in the interpreter
-
-
Comments:
in line text after # is ignored
text within triple quotes
""" this is a multiline
comment
indentation needs to conform """
STRINGS:
sequence of characters such as s = "abcdefg"
indexed wih [] starting at [0]
s[-1] refers to last character in string
- negative indexing starts at last character
- use s[p:q] for string slicing
- s[3:] evaluated as "defg"
- s[:3] eevaluated as "abc" (up to but not 3)
- s[1:-2] evaluated as "bcde" (up to but not including -2)
VERY HANDY!
STR Concatenation
- first = "John"
- last = "Cleese"
-
- full = first + " " + last
- sp = " "
- full = first + sp + last
"+" operator is Operand Aware
- if both sides are strings, python will concatenate
- if they are numbrs it will add them
- if you mix: you get an error
-
-
-
-
immutable string:
- if you want to change a character in a string, assign the new string to the same variable
-
-
automatic memory management
printing:
_ = " " # string variable names _
print ("hello" + _ + "there")
pi = 3.14159
print ('The answer is ' + str(pi)) # cast float to string in order to print
Conditionals
elif = else if
if a>0:
elif a<0:
else:
rint column titles
right align degree values
limit radians to 7 character
str is a class
- see documentation + read up!
-
-
math module
math.sqrt(x)
math.sin(x)
math.cos(x)
use math.pi for defined constant
use math.cos(radian) to compute cosine
print cosine in 3rd column
- align cosine to decimal point
-
import sys
sys.path.append("/u/efeibush/spline")
import cubic.py # import your own code
Collections -> arrays in other languages
List [] # ordered sequence of stuff
- looks like an array in c
- indexed from [0]
- last index is length [-1]
-
- it is though a class
- with its own methods
- .append()
- .sort()
-
- magic slice operator :
- magic iter() function actually __iter__()
tuple () # n-tuple, immutable
Declare a List
- x = [14,23, 34 ,42, 50, 59]
- x.append(66)
-
List methods
- append
- extend
- insert
- remove
- sort
- reverse
- index
- count
-
- cList = aList + bList #concatenate lists
-
ragne() function returns a list
range(stop)
range(start, stop)
range(start,stop,incr)
returns list of integres up to but not including stop
built in function
dir(__builtins__)
looping with range
- for in
- for i in range(10):
- for i in dayList:
-
numpy.linspace
import numpy
a = numpy.linspace(1., 2.,11)
for i in a:
look up list techniques
store a list of radians and a list of cosines
print the lists
use a range loop instead of while
import numpy (if you get into large arrays)
ndarray class
princeton.edu/~freibush
delete keyword
del a[3]
unpack a list into variables
name = ["abe", "lincoln"]
first, last = name
command line arguments
- import sys
- print (sys.argv)
- sys,argv is a list
- sys.argv[0] has the name of the python lfile
-
-
shell scripting
much better text handling than csh and bsh and shell independent