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,)  # 需要添加一个逗号

 

上一篇:WebGL_0009:canvas 画布 旋转90度


下一篇:1. 不吹不擂,第一篇就能提升你对Bean Validation数据校验的认知