Python中元组和列表的问题

2024-05-16 10:48:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要找到一种方法来获取数据集并更改一些值

数据格式如下:(姓名、年龄、财富)

list = [(Donald, 25, 500), (Chris, 28, 450), (Susan, 23, 650)]

我需要使用for循环以及元组和列表的索引来将每个人的财富精确地更改为1000


Tags: 方法列表forlistchris元组姓名数据格式
1条回答
网友
1楼 · 发布于 2024-05-16 10:48:05

您可以这样做:

list = [(Donald, 25, 500), (Chris, 28, 450), (Susan, 23, 650)]

for i in range(len(list)):
    list[i] = (list[i][0],list[i][1],1000)

因为tuple是不可变的,所以您需要创建一个全新的tuple

您也可以这样创建一个新的list

list = [(Donald, 25, 500), (Chris, 28, 450), (Susan, 23, 650)]
list2 = []
for t in list:
    list2.append(t[0],t[1],1000)

这是一种类似于for-each的遍历列表的方法

另外两个简单紧凑的方法,如@Martijn Pieters♦ 建议如下使用list comprehensions

list = [(Donald, 25, 500), (Chris, 28, 450), (Susan, 23, 650)]
list = [(x,y,1000) for (x,y,z) in list]

或者enumerate()像这样:

list = [(Donald, 25, 500), (Chris, 28, 450), (Susan, 23, 650)]
for i, (name, age, wealth) in enumerate(list):
    list[i] = (name,age,1000)

相关问题 更多 >