Python 基础——tuple与list、append与extend

来源:互联网 发布:开发长沙软件外包 编辑:程序博客网 时间:2024/05/24 04:22

tuple可读不可写,tuple的元素不可作左值,list反之

>>>t = (1, 2, 3)>>>t[:](1, 2, 3)>>>t[0] = 4Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: 'tuple' object does not support item assignment>>>l = [1, 2, 3]>>>l[:][1, 2, 3]>>>l[0] = 4

两者的成员函数:tuple几乎没什么成员函数,list却有着丰富的成员函数:

>>>t = (1, 2, 3, 3, 4)>>>dir(t)# 有意义的成员函数只有`count`、`index`# count,记录元组中某一元素出现的次数,index返回值所在的下标>>>t.count(3)2>>>t.count(2)1>>>t.index(4)4>>>l=[1, 2, 3, 4]dir(l)


这里写图片描述


这里写图片描述

# extend见名知意,扩展,既然存在我们广泛使用`[].append(*)`函数,`extend`# 从这也意义上说,`tuple`更像是`C`语言中的一维数组,长度在初始化时即已确定,# 而`vector`(以`C++STL`)为例,也存在着`push_back()`之类的函数,可动态扩从其大小>>>l = [1, 2, 3]>>>l.extend(4)Traceback (most recent call last):  File "<stdin>", line 1, in <module>TypeError: 'int' object is not iterable# 这点可见extend与append函数的区别>>>l.extend([4, 5])>>>l[1, 2, 3, 4, 5]>>>l.append([6, 7])>>>l[1, 2, 3, 4, 5, [6, 7]]# 也即每次append添加的是一个元素(作为一个整体添加进去),# 而这个元素的类型不定,可以是整型,也可以是字符串类型,# 而extend的参数必须是可迭代的类型,这样添加的是其中的每一个元素,# 而不是作为整体进行添加

彼此间类型转换

>>>l = [1, 2, 3, 3, 4]>>>tuple(l)(1, 2, 3, 3, 4)>>>t = (1, 2, 3, 3, 4)>>>list(t)[1, 2, 3, 3, 4]>>>(l)[1, 2, 3, 3, 4]>>>[t]                 # 由元组组成的list[(1, 2, 3, 3, 4)]

tuple的切片还是tuplelist的切片还是list(这可能是一句废话)

>>>type(t[0:2])<class 'tuple'>>>>type(l[0:3])<class 'list'>
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 新店排名被降怎么办 淘宝店铺跳失率过大怎么办 国外打印很贵怎么办 店铺访客被拒怎么办 steam锁支付后怎么办 芦荟茎太长了怎么办 网店加盟被骗怎么办 分期乐忘记账号怎么办 贴墙纸遇到插头怎么办 用了屈臣氏过敏怎么办 商品房内电箱不符合标准怎么办 淘宝上恶意退货怎么办 退货率高了怎么办 淘宝店被关了钱怎么办 买家不申请退款怎么办 被买家恶意投诉怎么办 淘宝投诉后退款怎么办 天猫投诉不成功怎么办 苹果手机打不开流量怎么办 苹果6流量打不开怎么办 苹果笔记本电脑打不开软件怎么办 苹果软件蜂窝打不开怎么办 苹果手机wifi打不开怎么办 苹果app变成韩语怎么办 ipad键盘变成英文怎么办 苹果8商店打不开怎么办 苹果手机不能下载怎么办 天猫魔盒遥控器丢了怎么办 电视盒子声音小怎么办 宽带los亮红灯怎么办 猫的lan灯不亮怎么办 光猫los灯不亮怎么办 移动宽带红灯亮怎么办 ie打不开网页怎么办win10 win10系统ie打不开怎么办 笔记本电脑玩lol卡怎么办 火狐浏览器电脑版打不开怎么办 手机淘宝没密码怎么办 实体店不让退货怎么办 出生公证双认证怎么办 手机淘宝网速慢怎么办