一、列表
列表(list),是一个有序且可变的容器,在里面可以存放多个不同类型的元素。
1.1 定义
number_list = [98,88,666,12,-1]
data_list = [1,True,"Alex","宝强","贾乃亮"]
1.2 独有功能
Python中为所有的列表类型的数据提供了一批独有的功能。
在开始学习列表的独有功能之前,先来做一个字符串和列表的对比:
- 字符串,不可变,即:创建好之后内部就无法修改。
name = "alex"
data = name.upper()
print(name) #alex
print(data) #ALEX
- 列表,可变,即:创建好之后内部元素可以修改。【独有功能基本上都是直接操作列表内部,不会创建新的一份数据】
user_list = ["车子","房子"]
user_list.append("金钱")
print(user_list) # ["车子","房子","金钱"]
1.2.1 Python3 List append()方法
描述
append() 方法用于在列表末尾添加新的对象。
语法
append()
方法语法:
list.append(obj)
参数
- obj – 添加到列表末尾的对象。
返回值
该方法无返回值,但是会修改原来的列表。
代码示例
data_list = []
v1 = input("请输入姓名") #alex
data_list.append(v1)
v2 = input("请输入姓名") #eric
data_list.append(v2)
print(data_list) # ["alex","eric"]
# 案例1
user_list = []
while True:
user = input("请输入用户名(Q/q退出):")
if user.upper() == "Q":
break
user_list.append(user)
print(user_list)
# 案例2
welcome = "欢迎使用游戏".center(30, '*')
print(welcome)
user_count = 0
while True:
count = input("请输入游戏人数:")
if count.isdecimal():
user_count = int(count)
break
else:
print("输入格式错误,人数必须是数字。")
message = "{}人参加游戏游戏。".format(user_count)
print(message)
user_name_list = []
for i in range(1, user_count + 1):
tips = "请输入玩家姓名({}/{}):".format(i, user_count)
name = input(tips)
user_name_list.append(name)
print(user_name_list)
1.2.2 Python3 List extend()方法
描述
extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。
语法
extend()
方法语法:
list.extend(seq)
参数
- seq – 元素列表,可以是列表、元组、集合、字典,若为字典,则仅会将键(key)作为元素依次添加至原列表的末尾。
返回值
该方法没有返回值,但会在已存在的列表中添加新的列表内容。
tools = ["搬砖","菜刀","榔头"]
tools.extend( [11,22,33] ) # weapon中的值逐一追加到tools中
print(tools) # ["搬砖","菜刀","榔头",11,22,33]
tools = ["搬砖","菜刀","榔头"]
weapon = ["AK47","M6"]
#tools.extend(weapon) # weapon中的值逐一追加到tools中
#print(tools) # ["搬砖","菜刀","榔头","AK47","M6"]
weapon.extend(tools)
print(tools) # ["搬砖","菜刀","榔头"]
print(weapon) # ["AK47","M6","搬砖","菜刀","榔头"]
# 等价于(扩展)
weapon = ["AK47","M6"]
for item in weapon:
print(item)
# 输出:
# AK47
# M6
tools = ["搬砖","菜刀","榔头"]
weapon = ["AK47","M6"]
for item in weapon:
tools.append(item)
print(tools) # ["搬砖","菜刀","榔头","AK47","M6"]
1.2.3 Python3 List insert()方法
描述
insert() 函数用于将指定对象插入列表的指定位置。
语法
insert()
方法语法:
list.insert(index, obj)
参数
- index – 对象obj需要插入的索引位置。
- obj – 要插入列表中的对象。
返回值
该方法没有返回值,但会在列表指定位置插入对象。
代码示例
user_list = ["小香猪","朱爷","百代鸡"]
user_list.insert(0,"马蓉") #["马蓉","小香猪","朱爷","百代鸡"]
user_list.insert(2,"李小璐") #["马蓉","小香猪","李小璐","朱爷","百代鸡"]
print(user_list)
1.2.4 Python3 List remove()方法
描述
remove() 函数用于移除列表中某个值的第一个匹配项。
语法
remove()
方法语法:
list.remove(obj)
参数
obj – 列表中要移除的对象。
返回值
该方法没有返回值但是会移除列表中的某个值的第一个匹配项,如果没有匹配项则会报错。
user_list = ["王宝强","陈羽凡","Alex","贾乃亮","Alex"]
user_list.remove("Alex")
print(user_list)
user_list = ["王宝强","陈羽凡","Alex","贾乃亮","Alex"]
if "Alex" in user_list:
user_list.remove("Alex")
print(user_list)
user_list = ["王宝强","陈羽凡","Alex","贾乃亮","Alex"]
while True:
if "Alex" in user_list:
user_list.remove("Alex")
else:
break
print(user_list)