18.07.05

匿名 (未验证) 提交于 2019-12-03 00:40:02

一.list列表

列表可以装大量的数据,不限制数据类型.      表达方式:[],方括号中的每项用","隔开.     列表和字符串一样,有索引和切片

1.列表的增删改查

(1).append("添加的元素")向列表中添加一个元素,默认元素添加到列表的末尾.

例:

lst = ["周杰伦", "王力宏", "周润发"]
lst.append("伍佰")
print(lst)    ==<[‘周杰伦‘, ‘王力宏‘, ‘周润发‘, ‘伍佰‘]>

insert(指定位置,"添加的元素")把元素添加的指定的位置,原来在指定位置的元素往后移.

例:

lst = ["周杰伦", "王力宏", "周润发"]
lst.insert(1, "马化腾") # 把元素插入到指定位置. 元素的移动
print(lst) ==<[‘周杰伦‘, ‘马化腾‘, ‘王力宏‘, ‘周润发‘]>

exend(添加的元素)把元素添加到列表的最后   如果添加的元素是字符串最后列表添加的元素是字符串的每一个元.

迭代添加: 如果添加的是列表最后列表最后添加的是要添加的列表的元素.

例:

lst = ["周杰伦", "王力宏", "周润发"]
lst.extend(["马云"])
print(lst) ==<[‘周杰伦‘, ‘王力宏‘, ‘周润发‘, ‘马云‘]>

例:

lst = ["周杰伦", "王力宏", "周润发"]
lst.extend(["马云", "王健林", "李嘉诚"]) # 迭代添加
print(lst) ==<[‘周杰伦‘, ‘王力宏‘, ‘周润发‘, ‘马云‘, ‘马云‘, ‘王健林‘, ‘李嘉诚‘]>

例: 多次输入名字,按q键停止输入.

lst = []
while 1:
name = input("请输入学生的名字")
if name.upper() == "Q":
break
else:
lst.append(name) # 把名字添加到列表

print(lst)
结果:
请输入学生的名字adf
请输入学生的名字vht
请输入学生的名字tj
请输入学生的名字hm,
请输入学生的名字q
[‘adf‘, vht‘, tj‘, hm,‘]

2.   pop()删除最后一个元素,     pop(删除元素的索引)删除指定索引位置的元素

例:

lst = ["白菜", "大白梨", "茄子", "大白梨"]
e = lst.pop() # 返回删除的元素, 删除最后一个
print(e) ==<大白梨> #删除的元素
print(lst)   ==<[‘白菜‘, ‘大白梨‘, ‘茄子‘]>   #删除最后一个元素的列表

例:

lst = ["白菜", "大白梨", "茄子", "大白梨"]
e = lst.pop(1) # 根据给出的索引进行删除
print(e) ==<大白梨>
print(lst) ==<[‘白菜‘, ‘茄子‘, ‘大白梨‘]>

remove(删除的元素)删除指定元素

例:

lst = ["白菜", "大白梨", "茄子", "大白梨"]
lst.remove("大白梨")
lst.remove("大白梨")
print(lst) ==<[‘白菜‘, ‘茄子‘]>

del 列表[]   切片删除

例:

lst = ["白菜", "大白梨", "茄子", "大白梨"]
del lst[1:] #从索引为1到最后的元素全部删除
print(lst) ==<[‘白菜‘]>

 3. 列表的改

列表的修改利用索引切片的修改

索引修改

例:

lst = ["太白", "五色", "银王", "日天"]
lst[0] = "太黑"
print(lst) ==<[‘太黑‘, ‘五色‘, ‘银王‘, ‘日天‘]>

 迭代修改

例:

lst = ["太白", "五色", "银王", "日天"]
lst[1:3] = "马化腾" # 迭代修改
print(lst) ==<[‘太白‘, ‘马‘, ‘化‘, ‘腾‘, ‘日天‘]>

 例:

lst = ["太白", "五色", "银王", "日天"]
lst[1:3] = ["周杰伦", "王力宏"]
print(lst) ==<[‘太白‘, ‘周杰伦‘, ‘王力宏‘, ‘日天‘]>

 4.列表的查询

for循环

例:

lst = ["舒克贝塔", "黑猫警长", "熊大熊二", "葫芦娃", "吴佩琪"]
for el in lst: # element(元素)
print(el)
结果:
舒克贝塔
黑猫警长
熊大熊二
葫芦娃
吴佩琪

 5.列表的相关操作

(1)len(列表)--列表长度

例:

lst = ["1", "2", "3", "4","2", "6"]
print(len(lst)) ==<6>

(2)count(指定字符)--指定字符的长度

例:

lst = ["1", "2", "3", "4","2", "6"]
print(lst.count("2")) ==<2>

(3)sort()--排序,数字从小到大      从大到小是sort(reverse)

例:

lst = [1, 9, 18, 2 , 34, 88, 7, 9]
lst.sort() # 升序
print(lst) ==<[1, 2, 7, 9, 9, 18, 34, 88]>
lst.sort(reverse=True) # 倒序
print(lst) ==<[88, 34, 18, 9, 9, 7, 2, 1]>

(4)reverse--让列表从从右到左(倒序)排列 

 例:

lst = [1, 9, 18, 2 , 34, 88, 7, 9]
lst.reverse()
print(lst) ==<[9, 7, 88, 34, 2, 18, 9, 1]>

6.列表的嵌套

降维操作

例:

lst = [1, "周杰伦", "张杰", ["周星驰", ["可口可乐"], "陈奕迅"]]
print(lst[3][1][0]) ==<可口可乐>
lst[3][1].append("芬达")
print(lst) ==<[1,"周杰伦","张杰",["周星驰",["可口可乐","芬达"],"陈奕迅"]]>
lst[2] = lst[2].replace("杰", "键")
print(lst) ==<[1,"周杰伦","张键",["周星驰", ["可口可乐"], "陈奕迅"]]>

 

二.tuple元组

不可变列表,只读列表.  有索引和切片

当元组元素少于等于1时,需要加一个逗号.

例:

lit = (1, "花生", "ɽҩ")
print(type(lit)) ==<class"tuple">
tu = (1 ) # 需要添加一个逗号
print(type(tu)) ==<class"int">
tu = (1, )    # 需要添加一个逗号
print(type(tu))          ==<class"tuple">

空元组   tu=tuple()     元组只能进行(1)count()--查找元素出现的次数;(2)index()--查找元素是否存在,不存在直接报错.

元组的遍历:

for  el  in  tu:

      print(el)

元组本身不能改变,元组内部第一层元素不能改变  如果元组中包含列表,则列表是可以变的.

例:

tu = (1, "马化腾", ["胡辣汤", "疙瘩汤", "西红柿鸡蛋汤"])
tu[2].append("粘包米") # 元组本身没有变. 变的是儿子中的内容
print(tu) ==<(1, ‘马化腾‘, [‘胡辣汤‘, ‘疙瘩汤‘, ‘西红柿鸡蛋汤‘, ‘粘包米‘])>

 

三.range

例:

for i in range(10): # 从0开始. 到10结束
print(i)
结果:
0
1
2
3
4
5
6
7
8
9

例:

for i in range(3, 7):   # 从3 开始. 打印到7结束. 不能到7
print(i)
结果:
3
4
5
6

例:

for i in range(3, 10, 2):  # 从3 到 10 每2个取一个
print(i)
结果:
3
5
7
9

例:

for i in range(0, -5, -1):  #从0 开始到-5结束. 倒着数
print(i)
结果:
0
-1
-2
-3
-4

 

18.07.05

原文:https://www.cnblogs.com/gxj742/p/9270735.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!