使用。追加以迭代Python中扩展的数字列表

问题描述 投票:0回答:2

这两个方法都返回None类型;它们的目的是附加一个比列表中最终整数高1的新数字。双重打印语句仅用于测试循环中代码的可行性。我在做什么错,以至于无法获得预期的结果?

方法1:

number_list = [1,2,3,4,5,6,7,8]
number_list = number_list.append(number_list[-1]+1)
print(number_list)
print(number_list)

方法2:

number_list = [1,2,3,4,5,6,7,8]
number_list = number_list.append(number_list[0]+number_list[-1])
print(number_list)
print(number_list)
python list append iteration
2个回答
0
投票

.append返回none,这就是您要设置的number_list。而是使用该方法而不将其设置为number_list,它将正常工作。

>>> number_list = [1,2,3,4,5,6,7,8]
>>> number_list
[1, 2, 3, 4, 5, 6, 7, 8]
>>> number_list.append(number_list[-1]+1)
>>> number_list
[1, 2, 3, 4, 5, 6, 7, 8, 9]

[您可能已经注意到,仅修改列表的插入,删除或排序之类的方法未打印任何返回值-它们返回默认值None。 1这是Python中所有可变数据结构的设计原则。 [source]


0
投票

您不需要编号列表= numberlist.append(...)

just

numberlist.append(..)
© www.soinside.com 2019 - 2024. All rights reserved.