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
的切片还是tuple
,list
的切片还是list
(这可能是一句废话)
>>>type(t[0:2])<class 'tuple'>>>>type(l[0:3])<class 'list'>
0 0
- Python 基础——tuple与list、append与extend
- Python基础——list.append() 与 list.extend() 的区别
- Python List中append()与extend()
- python list中append()与extend()用法
- python list中append()与extend()用法
- python list中append()与extend()用法
- python list中append()与extend()用法
- python list中append()与extend()用法
- python--list中append()与extend()用法
- python list中append()与extend()用法
- python list中append()与extend()用法
- python基础学习--append、extend与insert
- python学习-python list中append()与extend()用法
- python 中 append 与 extend
- python中的append与extend
- python list 中append与extend函数的区别赏析
- python list中append()与extend()用法分享
- python list中append()与extend()用法分享
- ie 游览器翻译小书签
- POJ 3253 Fence Repair(哈夫曼树)
- poj 1226 暴力字符串匹配
- poj 1176 Party Lamps 搜索
- 排序算法之快速排序
- Python 基础——tuple与list、append与extend
- C++学习笔记-- 预编译指令
- 闲聊 - chrome自定义搜索
- 设计模式---生活例子
- NetFPGA安装及配置
- 二叉树的序列化和反序列化
- Visual EmbedLinux Tools:让vs支持嵌入式Linux开发
- 免费DDOS攻击测试工具大合集
- NYOJ20 吝啬的国度