这两个方法都返回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)
.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]
您不需要编号列表= numberlist.append(...)
just
numberlist.append(..)