6 Python的数据类型——列表(1)

6 Python的数据类型——列表(1),第1张

1. 列表是什么
  • 「列表」是由一系列按顺序排列的元素组成
  • 列表中的元素可以是「字符串」「数」「变量」
  • Python中用方括号「[]」表示列表,用「,」分隔其中的元素
school="Hogwarts"
messages=['Gryffindor','Hufflepuff',199,f"{school}"]
print(messages)

2.列表的基本 *** 作
2.1 创建一个空列表
messages=[]

2.2 查
(1)访问列表元素

列表是有序集合
列表元素是通过列表元素的位置「索引」来访问的
要访问列表元素,可指出列表的名称,再指出元素的索引,后者放在方括号内

messages=['Gryffindor','Hufflepuff',199,"Slytherin","Ravenclaw"]
print(messages[3])                ###
print(messages[3].upper())        ###
----------
Slytherin
SLYTHERIN

索引的规则

索引从0开始
[-i]为倒数第i个元素的索引

messages=['Gryffindor','Hufflepuff',199,"Slytherin","Ravenclaw"]
print(messages[-1])  ###
----------
Ravenclaw

在字符串使用列表中某个元素的值

使用方法类似于使用变量

messages=['Gryffindor','Hufflepuff',199,"Slytherin","Ravenclaw"]
print(f"One of the Hogwarts's houses is {messages[0]}")  ###
----------
One of the Hogwarts's houses is Gryffindor

(2)查看列表长度
messages=['Gryffindor','Hufflepuff',199,"Slytherin","Ravenclaw"]
print(len(messages))
----------
5

2.3 改:修改列表元素

指定列表名和要修改的元素的索引,再指定该元素的新值

messages=['Gryffindor','Hufflepuff',199,"Slytherin","A"]
print(messages)

messages[-1]="Ravenclaw"  ###
print(messages)
----------
['Gryffindor', 'Hufflepuff', 199, 'Slytherin', 'A']
['Gryffindor', 'Hufflepuff', 199, 'Slytherin', 'Ravenclaw']


2.4 增:在列表中添加元素
方式1:在列表末尾添加元素

对列表使用方法append()

messages=['Gryffindor','Hufflepuff',199,"Slytherin"]
print(messages)

messages.append("Ravenclaw")   ###
print(messages)
----------
['Gryffindor', 'Hufflepuff', 199, 'Slytherin']
['Gryffindor', 'Hufflepuff', 199, 'Slytherin', 'Ravenclaw']

方式2:在列表任意位置插入元素

对列表使用insert()方法,为列表指定要插入元素的索引和值

messages=['Gryffindor','Hufflepuff',199,"Slytherin"]
print(messages)

messages.insert(1,"Ravenclaw")   ###
print(messages)
----------
['Gryffindor', 'Hufflepuff', 199, 'Slytherin']
['Gryffindor', 'Ravenclaw', 'Hufflepuff', 199, 'Slytherin']---

2.5 删:从列表中删除元素
方式1:通过元素的位置进行删除

使用del语句

messages=['Gryffindor','Hufflepuff',"Ravenclaw","Slytherin"]
print(messages)

del messages[2]   ###
print(messages)
----------
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 'Slytherin']
['Gryffindor', 'Hufflepuff', 'Slytherin']

方式2:删除任意位置的值,并接着使用该值(智能版)

使用方法pop(),可以删除列表某个位置的元素,并且接着使用它
即列表就像一个栈,删除列表某个位置的元素相当于d出某个位置的元素

方法pop()括号内不提供位置信息,则默认删除最后一个元素
messages=['Gryffindor','Hufflepuff',"Ravenclaw","Slytherin"]
print(messages)

poped_house=messages.pop() ###
print(messages)
print(poped_house)
----------
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 'Slytherin']
['Gryffindor', 'Hufflepuff', 'Ravenclaw']
Slytherin
方法pop()括号内提供位置信息,则d出该位置对应的元素
messages=['Gryffindor','Hufflepuff',"Ravenclaw","Slytherin"]
print(messages)

poped_house=messages.pop(0)   ###
print(messages)
print(poped_house)
----------
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 'Slytherin']
['Hufflepuff', 'Ravenclaw', 'Slytherin']
Gryffindor

①定义一个列表
②从列表中d出一个值,并将该值赋给「poped_house」

方式3:根据值删除元素,并接着使用该值(手动版)

使用方法remove()

messages=['Gryffindor',199,'Hufflepuff',"Ravenclaw",199,"Slytherin",777]
print(messages)

element=777                 ###
messages.remove(element)    ###
print(messages)
print(element)
----------
['Gryffindor', 199, 'Hufflepuff', 'Ravenclaw', 199, 'Slytherin', 777]
['Gryffindor', 199, 'Hufflepuff', 'Ravenclaw', 199, 'Slytherin']
777

方法remove()只删除第一个指定的值。如果指定的值在列表中多次出现,只会删除索引最靠前的值

messages=['Gryffindor',199,'Hufflepuff',"Ravenclaw",199,"Slytherin",777]
print(messages)

element=199
messages.remove(element)
print(messages)
print(element)
----------
['Gryffindor', 199, 'Hufflepuff', 'Ravenclaw', 199, 'Slytherin', 777]
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 199, 'Slytherin', 777]
199

2.6 排序
方式1:按字母顺序,列表进行永久排序

方法sort()可以永久的修改列表中元素的排列顺序

messages=['Gryffindor',"Ravenclaw","Slytherin",'Hufflepuff']
print(messages)

messages.sort()               ###正序
print(messages)

messages=['Gryffindor',"Ravenclaw","Slytherin",'Hufflepuff']
print(messages)

messages.sort(reverse=True)   ###倒序
print(messages)
----------
['Gryffindor', 'Ravenclaw', 'Slytherin', 'Hufflepuff']
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 'Slytherin']
['Gryffindor', 'Ravenclaw', 'Slytherin', 'Hufflepuff']
['Slytherin', 'Ravenclaw', 'Hufflepuff', 'Gryffindor']

方式2:按字母顺序,对列表进行临时排序

函数sorted()

messages=['Gryffindor',"Ravenclaw","Slytherin",'Hufflepuff']
print(messages)
print(sorted(messages))                ###正序
print(sorted(messages,reverse=True))   ###倒序
----------
['Gryffindor', 'Ravenclaw', 'Slytherin', 'Hufflepuff']
['Gryffindor', 'Hufflepuff', 'Ravenclaw', 'Slytherin']
['Slytherin', 'Ravenclaw', 'Hufflepuff', 'Gryffindor']

方式3:反转列表元素的排列顺序

方法reverse()

messages=['Gryffindor',"Ravenclaw","Slytherin",'Hufflepuff']
print(messages)

messages.reverse()    ###
print(messages)
----------
['Gryffindor', 'Ravenclaw', 'Slytherin', 'Hufflepuff']
['Hufflepuff', 'Slytherin', 'Ravenclaw', 'Gryffindor']

========================
列表的基本 *** 作小结
messages[i]
messages[i]="元素值"
messages.append("元素值")
-----
messages.insert(索引值,"元素值")
del messages[i]
-----
messages.pop(i)
-----
messages.remove("元素值")
  • 排序
messages.sort()
-----
sorted(messages)
-----
messages.reverse()

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/876060.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-13
下一篇2022-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存