哎,好久没更了。。。。懒惰了懒惰了,还是应该好好学习啊
不是量化搞人心态 是这些最基本的数据处理搞人心态
今天重新学一下元组
元组:对象不可变!!!!
1.直接取元组中的元素:
tup=(4,5,6) a,b,c=tup print(b)
b=5
2.轻松交换变量名 !!!!这个很重要的!!!!
a=1 b=2 a,b=b,a print(a) print(b)
a=2,b=1
3.拆包(高级+常用)
seq=[(1,2,3),(4,5,6),(7,8,9)] for a,b,c in seq: print('a={0},b={1},c={2}'.format(a,b,c))
a=1,b=2,c=3
a=4,b=5,c=6
a=7,b=8,c=9
format是格式化,{}是格式
4.丢弃数据
values=1,2,3,4 a,b,*rest=values print(a,b) print(rest)
1 2
[3, 4]
5. 计算元组中某一元素的个数
a=(1,2,3,4,4,4,2)
print(a.count(4))
3
6. 列表vs元组:列表可修改,元组不能
7. 列表连接:a+b(a和b都是列表);a.extend(b)(构建大型列表选择用extend)
8. 列表排序:a.sort();a.sort(key=len)(通过字符串长度进行排序)key也可以等于其他的,但目前还不知道
9. bisect模块:bisect.bisect(a,x)将a升序排序并输出x应该插入的位置;bisect.insert将元素插入到指定位置
10.每隔x个数取一个值:seq[::x]
11.翻转列表:seq[::-1]
12.!!!输出列表的索引和值!!!
collection=[1,2,4,6,9,11] for i,value in enumerate(collection): print(i,value) 0 1 1 2 2 4 3 6 4 9 5 11
所以就可以用enumerate
some_list=['foo','bar','baz'] mapping={} for i,v in enumerate(some_list): mapping[v]=i print(mapping) {'foo': 0, 'bar': 1, 'baz': 2}