python algorithm
2020-06-10 本文已影响0人
手捧樱花v
- 同样的变量可以指向许多不同类型的数据
空列表就是[],列表是异构的,元组和字符串一样是不可修改的,这意味着其指向的数据对象不需要都是同一个类,[:]切片
变量A包含3个指向m的引用。m中的一个元素发生改变,mm中的3处都随即改变
>>> m = [1,2,3]
>>> mm = [m]*3
>>> print(mm)
[[1, 2, 3], [1, 2, 3], [1, 2, 3]]
>>> m.append("Qq")
>>> print(mm)
[[1, 2, 3, 'Qq'], [1, 2, 3, 'Qq'], [1, 2, 3, 'Qq']]
list [] , str "", tuple (),set {}, dic {"a":"b"}
键的位置是由散列来决定的
>>> asshole = {"no":1,"no2":2}
>>> "no2" in asshole
True
>>> 2 in asshole
False
>>> list(asshole)
['no', 'no2']
>>> asshole.get("no")
1
println从python3中取消 print直接实现换行
>>> print('i','am',sep="~")
i~am
>>> print('i','am',sep="~",end="!!!")
i~am!!!
>>> print("%d is my %s" %(17,"salary"))
>>> itemdict = {"item":"banana","cost":24}
>>> print("the %(item)s costs %(cost)d cents"%itemdict)
the banana costs 24 cents
>>> print("the %(item)s costs %(cost)7.1f cents"%itemdict)
the banana costs 24.0 cents //7个字符宽度,1位小数的浮点数,不够7个字符会自动补空格
>>> sakura = [x * x for x in range(1,10)]
算法需要两个重要的控制结构:迭代和分支