01-python进阶-拾遗
2024-09-04 05:45:59
列表复习
append(x)追交到链尾
extend(L)追加一个列表 等价于 +=
insert(i,x)在位置i处插入x
remove(x) 删除一个值为x的元素 如果没有抛出异常
sort() 直接修改列表为排序过的
sorted(L) 返回排序后的L 元祖 一旦初始化便不能修改的数据结构 比列表快
集合 (set) 无序不重复的元素集 不保证是有序
字典(dict) 关键字不可变类型 如字符串 整数 只包含 不可变对象的元祖 关于字典 功能非常强大 我们可以做的事情很多比如
def leijia(x,y):
a = 0
for i in xrange(x,y+1):
a += i
return a
def plus(x,y):
return x+y matruix = {
'+':plus,
'leijia':leijia, } def size(x,oper,y):
return matruix[oper](x,y) print(size(1,'leijia',2))
我们可以做一个switch case的模式
#filter
a = [1,2,3,4]
filter(lamda x:x%2,a)
[1,3]
#map 返回序列 为对原序列每个元素分别调用function获得的可以传入多个序列 但是function 也要有相应多的参数
map(lambda x,y,z:x+y+z,range(1,3),range(3,5),range(5,7))
计算过程 1+3+5 = 9 2+4+6=12 结果 [9,12]
接下来我们要实现
l1 = [1,2,3,4]
oper = ['+','-','leijia','*']
l2 = [2,44,55,66] #l1[0] "oper[0]" l2[0]=? ...
def plus(x,y):
return x+y def jian(x,y):
return x-y def leijia(x,y):
a = 0
for i in(x,y):
a +=1 return a def size(x,oper,y):
return my_dict[oper](x,y) def chengji(x,y):
return x*y
my_dict = {
'+':plus,
'-':jian,
'leijia':leijia,
'*':chengji,} l1 = [1,2,3,4]
oper = ['+','-','leijia','*']
l2 = [2,44,55,66]
#L1[0] "oper[0]" L2 = ? .... res = map(size,l1,oper,l2)
print(list(res))
结果是[3, -42, 2, 264]
#reduce
reduce(function,sequence,[init])
返回一个单值为,计算步骤为:
1 第一个结果=function(sequence[0],squence[1])
2第二个结果=function(第一个的结果,sequence[2])
3返回最后一个计算得值
4 如果有init 则先调用 function(init,sequence[0])
5 sequence 只有一个元素时候,返回该元素 为空时抛出异常
如 reduce(lambda x,y:x+y,range(3),99)的计算过程为
99+0 =99=》99+1=100=》100+2返回102
住 实际使用过程中建议使用内建函数sum来完成这个累加更合适 这里等价为 sum(range(3),99)
#zip 用于多个sequence的循环
最新文章
- VB下对HTML元素的操作
- 第六篇.bootstrap表格
- Powerdesigner 设置唯一约束
- winform 配置文件的加密解密
- (六)6.10 Neurons Networks implements of softmax regression
- hdu 5025 Saving Tang Monk(bfs+状态压缩)
- 安卓Intent(隐式)
- mysql笔记7之数据类型
- HTTPS从认识到线上实战全记录
- 吴恩达机器学习笔记26-样本和直观理解1(Examples and Intuitions I)
- Tembin
- docker-compose.yml(1)
- Sqoop异常:Please set $ACCUMULO_HOME to the root of your Accumulo installation.
- 浅谈Log4j2日志框架及使用
- JAVA类变量(静态变量)
- Java学习--编译器javac
- [转]thinkphp在iis下的rewrite伪静态的配置方法
- M爷的线段树
- HttpCookieCollection类
- Mahout0.6-VectorDumper bug修复