( )
instead of [ ]
,[ ]
,t[1]=55
gives an error.t = (1.1, 2.2, 3.3)
t[1]
2.2
t = (1.1,)
t = (1.1)
t
is just 1.1, not a tuple holding 1.1 as the first element.t = (1, 2, 3,)
L = [1, 2, 3,]
t = (1, 2.5 , -3) # make a tuple
x, y, z = t # unpack the tuple "into" x, y, and z
x, y, z = 1, 2.5, -3 # same thing
(x, y, z) = t # same thing
(x, y, z) = (1, 2.5, -3) # same thing
print(f"x = {x}")
print(f"y = {y}")
print(f"z = {z}")
x = 1 y = 2.5 z = -3
Note, we used this in returning more than one thing from a function
import numpy as np
def add_and_multiply(x, y):
return x+y, x*y # returning a tuple
s, p = add_and_multiply(3,4) # unpack the tuple into s, p
t = add_and_multiply(3,4) # t is a tuple
print(s, p)
print(t)
7 12 (7, 12)
{ }
instead of [ ]
,key:value
pairs[key]
instead of by [i]
for some integer index i
,mw = {
"CO2":12.011+15.999*2,
"H2O":1.0079*2+15.999,
"O2" :15.999*2,
"N2" :14.0067*2,
}
print("mw of o2 is ", mw["O2"])
funcs = {np.sin:"what up sin?", np.log10:np.tanh} # evil!
funcs[np.log10](22)
mw of o2 is 31.998
1.0
mw.keys()
mw.values()
mw.items()
len(mw)
for k in mw.keys():
print(k, mw[k])
CO2 44.009 H2O 18.0148 O2 31.998 N2 28.0134
for v in mw.values():
print(v)
44.009 18.0148 31.998 28.0134
for k, v in mw.items():
print(k,v)
mw.items()
CO2 44.009 H2O 18.0148 O2 31.998 N2 28.0134
dict_items([('CO2', 44.009), ('H2O', 18.0148), ('O2', 31.998), ('N2', 28.0134)])
if "H2" in mw:
print("H2 is there")
else:
print("H2 is not there")
H2 is not there
mw["new_key"] = newValue
print(mw)
mw["H2"] = 1.0079*2
print(mw)
{'CO2': 44.009, 'H2O': 18.0148, 'O2': 31.998, 'N2': 28.0134} {'CO2': 44.009, 'H2O': 18.0148, 'O2': 31.998, 'N2': 28.0134, 'H2': 2.0158}
del mw["some_key"]
mw.pop("some_key")
mw.popitem()
deletes the last inserted itemprint(mw)
mw.popitem()
print(mw)
{'CO2': 44.009, 'H2O': 18.0148, 'O2': 31.998, 'N2': 28.0134, 'H2': 2.0158} {'CO2': 44.009, 'H2O': 18.0148, 'O2': 31.998, 'N2': 28.0134}