编写一个函数,对列表的值进行修改,为什么结果中列表没有修改成功?
编写一个函数,对列表name的值进行修改,为什么结果中列表没有修改成功?def make_great(name):
for i in name:
i = 'The Great ' + i
magicName = ['andy', 'bob', 'candy','david']
make_great(magicName)
print(magicName) 出现这个问题是因为在函数 `make_great` 中,您只是修改了循环变量 `i` 的值,而没有直接修改列表中的元素。您需要通过索引访问列表元素并进行修改。以下是修正后的代码:
def make_great(name):
for i in range(len(name)):
name = 'The Great ' + name
magicName = ['Houdini', 'Copperfield', 'Blaine']
make_great(magicName)
print(magicName)
这样,`magicName` 列表中的每个元素都会被正确地修改为 `'The Great '` 加上原来的名字。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 你这只是对 i 进行了修改
print输出的是magicName def make_great(name):
for i, v in enumerate(name):
name = 'The Great ' + v
magicName = ['andy', 'bob', 'candy','david']
make_great(magicName)
print(magicName) 用append()或extend()
isdkz 发表于 2024-12-8 03:16
enumerate这个函数我都没怎么用过,惭愧~
页:
[1]