前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python元组的基本概念_Python自学第二十五节

Python元组的基本概念_Python自学第二十五节

作者头像
张旭博客
发布2022-12-27 14:50:29
2470
发布2022-12-27 14:50:29
举报
文章被收录于专栏:zxbkzxbk

Python元组的基本概念:元组与列表类似,不同之处在于元组中的数据只能被调用不能被修改,元组使用小括号 ( ) 表示。如果元组里只有一个元素,需要向元素后边加上 逗号 “,”表示此为元组

  • 使用tuple()函数可以将其他序列转换为元组。
  • 元组没有append()、extend()、remove()、pop等方法。
  • 通过tuple()函数可以将列表冻结,而使用list()函数可以将元组融化
  • 元组的访问和处理速度比列表要快,如果对大量数据进行遍历,而不需要对其中的元素进行任何修改,那么建议使用元组而不是列表。
  • 元组通常用于为函数传递参数,从而防止在函数中修改参数。
代码语言:javascript
复制
>>> a = (1)
>>> a
1
>>> a = (1,)   #当只有一个元素,需要向元素后边加上 ,号表示为元组
>>> a
(1,)

>>> b
[1, 2, 3, 4, 5, 'a', 'b', 'c']   #此时b列表是可以修改的
>>> a = tuple(b)   #把列表用tuple转换成元组,则不能进行修改,可以转换成列表进行更改
>>> a
(1, 2, 3, 4, 5, 'a', 'b', 'c')   #此时元组的内容是无法进行修改的

练习:

过滤敏感词,把敏感词替换为*,敏感词:非法、暴力、攻击。

代码语言:javascript
复制
#!/usr/bin/python3
txt = input('请输入你想说的话:')   #输入任意内容
keyword = ('非法','暴力','攻击')   #设置敏感词
for i in keyword:   #i在keyword内循环
  if i in txt:   #如果i的值在keyword
    txt=txt.replace(i,'***')   #则利用.replace将txt内等于i的值替换成***
print(txt)   #最后输出txt

zip()函数

  • zip()函数可以将多个可迭代的对象中的元素进行组合,得到一个个元组,也被称为拉链函数。
  • 如果两个序列的长度不一致,zip()函数在最短序列"用完"时就会停止,以最短序列的长度进行"配对"。
代码语言:javascript
复制
>>> a = '12345'
>>> b = 'abcde'
>>> list(zip(a,b))   #得到一对一对的元组
[('1', 'a'), ('2', 'b'), ('3', 'c'), ('4', 'd'), ('5', 'e')]
>>> list(zip(range(4),b))   #取值编号0~3的三个字符,共计四个字符,所以对应b变量的4个
[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')]

如进行以下操作,将1~10和10~1进行相加:

代码语言:javascript
复制
>>> a = list(range(1,11))
>>> b = list(range(10,0,-1))
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> b
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>> for m,n in zip(a,b):   #用两个循环变量分别在a和b中循环取值
...     print(m+n,end=' ')   #输出每次循环m+n的值
... 
11 11 11 11 11 11 11 11 11 11 >>> 
>>> for m,n in zip(a,b):
...     print(m*3+n*2,end=' ')   #循环输出输出m*3+n*2
... 
23 24 25 26 27 28 29 30 31 32

[em]zip函数不仅只能处理2个参数,参数可以是任意个,也可以是任意参数如(元组、列表),不过最后能够组合出来的元素数量是由最短的那个参数决定的。[/em]

代码语言:javascript
复制
>>> list(zip(a,b,['h','a','l','l','o'],('P','y','t','h','o','n'),range(100,110)))   #次例含有列表,元组,字符串,数值
[(1, 10, 'h', 'P', 100), (2, 9, 'a', 'y', 101), (3, 8, 'l', 't', 102), (4, 7, 'l', 'h', 103), (5, 6, 'o', 'o', 104)]
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 练习:
  • zip()函数
    • 如进行以下操作,将1~10和10~1进行相加:
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档