前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >序列操作技巧

序列操作技巧

作者头像
TomatoCool
发布2023-07-30 17:43:40
1640
发布2023-07-30 17:43:40
举报
文章被收录于专栏:TomatoCoolTomatoCool
zip函数

将序列压缩成一个可迭代对象(也能用next函数和方法v)格式:

代码语言:javascript
复制
zip(iterable, ...)

合并序列:

代码语言:javascript
复制
#  返回一个zip对象,在for循环中相当于[(x1, y1, z1), ...](本身返回的不是这个)
xyz = zip([x1, x2, x3], [y1, y2, y3], [z1, z2, z3])
for x, y, z in xyz:
    print(x, y, z)

字典键值互换:

代码语言:javascript
复制
old = {'a':1, 'b':2, 'c':3}
#  new:{1:'a', 2:'b', 3:'c'}
new = dict(zip(old.values(), old.keys()))

解压:

代码语言:javascript
复制
#  注意用'*'解压后就不能再用'*'解压了
it = zip(old1, old2)
#  直接解压(相当于把迭代器的所有内容返回)
print(*it)
#  new1, new2的内容与old1,old2相同,类型为元组
new1, new2 = zip(*it)
map函数

对序列的每一项进行某个操作,返回一个新的序列 格式:

代码语言:javascript
复制
#  注意function是函数名,不用带括号
map(function, iterable, ...)

将输入的字符串转为数字列表:

代码语言:javascript
复制
#  打蓝桥杯那会天天用
map(int, input().split())

通过lambda函数操作多个序列:

代码语言:javascript
复制
#  返回一个序列,里面是数组[(1, 4), (2, 5), (3, 6)]
map(lambda x, y : (x, y), [1,2,3], [4,5,6])

不传入function时,有点像zip函数:

代码语言:javascript
复制
#  返回一个序列,里面是数组[(1, 4), (2, 5), (3, 6)]
map(None, [1,2,3], [4,5,6])

还可以自定义函数,格式如下:

代码语言:javascript
复制
def fun(x):
    #  对x进行操作
    #  返回一个新的x
    return new_x
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023 年 05 月,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • zip函数
  • map函数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com