python--列表,元组

简介: python--列表,元组

列表


list在循环的时候不能删,因为会改变索引

ls = ['aaa', 'bbb', 'ccc', 'ddd']
for el in ls:
    print(el)
    ls.remove(el)
print(ls)

结果:

aaa
ccc
['bbb', 'ddd']
names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77]
print(names[0])  # aa
print(names[-1])  # 77
print(names[1], names[4])  # bb ee
print(names[:3])  # ['aa', 'bb', 'cc']
print(names[-2:])  # ['ee', 77]
names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names.index('cc'))  # 2   查cc的位置
print(names[names.index('cc')])  # cc

插入

names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
names.append('ff')  # 往列表的最后插入元素
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77, 'ff']
names.insert(2, 'gg')  # 往列表的指定位置插入元素
print(names)  # ['aa', 'bb', 'gg', 'cc', 'dd', 'ee', 77, 'ff']

删除

names = ["aa", 'bb', 'cc', 'dd', 'ee', 77]
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee', 77]
names.pop()  # 删除列表中的最后一个元素
print(names)  # ['aa', 'bb', 'cc', 'dd', 'ee']
names.pop(2)  # 删除列表中的第三个元素
print(names)  # ['aa', 'bb', 'dd', 'ee']
names.remove('dd')  # 删除列表中为dd的元素
print(names)  # ['aa', 'bb', 'ee']
del names[1]  # del names[1] =names.pop(1)
print(names)  # ['aa', 'ee']
names.clear()  # 清除列表中的元素
print(names)  # []
del names  # 删除列表
names = ["aa", 'bb', 'cc', 'dd', 'ee', '77']
print(names)
names.reverse()  # 倒序排列
print(names)
names.sort()  # 排序,按符号,数字,大小写
print(names)
name2 = ['ff', 'gg']
names.extend(name2)  # 将name2合并到names中
print(names)
names.insert(2, 'ee')
print(names)
print(names.count('ee'))  # 查询有几个ee

结果:

['aa', 'bb', 'cc', 'dd', 'ee', '77']
['77', 'ee', 'dd', 'cc', 'bb', 'aa']
['77', 'aa', 'bb', 'cc', 'dd', 'ee']
['77', 'aa', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg']
['77', 'aa', 'ee', 'bb', 'cc', 'dd', 'ee', 'ff', 'gg']
2

如果数字不用引号括起来运行排序时错误,字符串和数字不能比较

names = ["aa", 'bb', ['zou', 'xx'], 'cc', 'dd', 'ee', '77']
print(names)
print(names[0:-1:2])
print(names[::2])

结果:

['aa', 'bb', ['zou', 'xx'], 'cc', 'dd', 'ee', '77']
['aa', ['zou', 'xx'], 'dd']
['aa', ['zou', 'xx'], 'dd', '77']


元组


  • 不可变的列表. 只读列表. 有索引和切片.
  • 不可变的是它内部子元素. 如果子元素是列表. 列表中的元素是可以变的.
  • 元组: 俗称不可变的列表.又被成为只读列表, 元组也是python的基本数据类型之一, 用小括号括起来, ⾥面可以放任何数据类型的数据, 查询可以. 循环也可以. 切片也可以. 但就是不能改.
  • 关于不可变, 注意: 这里元组的不可变的意思是子元素不可变. 而子元素内部的子元素是可以变, 这取决于子元素是否是可变对象.
  • 元组中如果只有一个元素. 一定要添加一个逗号, 否则就不是元组
  • 元组也有count(), index(), len()等方法. 可以自己测试使⽤
tu = (1, "马化腾", ["胡辣汤", "疙瘩汤", "西红柿鸡蛋汤"])
tu[2].append("粘包米")  # 元组本身没有变.变的是儿子中的内容
print(tu)  # (1, '马化腾', ['胡辣汤', '疙瘩汤', '西红柿鸡蛋汤', '粘包米'])

元组里只有一个元素时,要加逗号

tu1 = (1,)  # 需要添加一个逗号

相关文章
|
3天前
|
C语言 Python
深入理解并实践Python中的列表推导式
深入理解并实践Python中的列表推导式
8 1
|
13天前
|
存储 缓存 C语言
|
13天前
|
存储 测试技术 Python
Python 数组和列表有什么区别?
【8月更文挑战第29天】
20 4
|
12天前
|
Python
探索Python中的列表推导式:简洁与效率的融合
【8月更文挑战第31天】在编程的世界里,我们总是在寻找使代码更简洁、更高效的方法。Python语言提供了一种强大的工具——列表推导式,它允许我们在一行代码中生成列表,既提高了代码的可读性,也提升了执行效率。本文将带你了解列表推导式的基本概念,通过示例展示其使用场景,并探讨如何优雅地运用这一特性来简化你的Python代码。
|
14天前
|
存储 缓存 索引
python 的 tuple(元组) 是不是冗余设计?
python 的 tuple(元组) 是不是冗余设计?
|
13天前
|
存储 Python
Python 中的列表和元组
【8月更文挑战第29天】
15 1
|
14天前
|
Python
python的列表的remove()方法、判断if xxx in xx条件比较耗时问题
python的列表的remove()方法、判断if xxx in xx条件比较耗时问题
14 1
|
14天前
|
Python
Python多维列表(元组)合并成一维形式
Python多维列表(元组)合并成一维形式
12 2
|
15天前
|
索引 Python
python列表的常用操作方法
python列表的常用操作方法
|
11天前
|
数据处理 开发者 Python
探索Python中的列表推导式:一种简洁而强大的工具
【8月更文挑战第31天】在Python编程中,列表推导式是一种高效且优雅的构建列表的方法。本文将通过实际代码示例深入探讨列表推导式的不同形式及其使用场景,旨在帮助读者更好地理解和运用这一强大工具。