python 创建一个空列表,然后用for循环遍历添加数据的空列表,最后报错 'NoneType' object is not iterable 新手自学时遇到的问题,问下各位老铁这是因为什么

news=[]
for new in news.extend(range(1,7)):
print(new)

news=[]
for new in range(1,7):
news.append(new)
print(news)

for new in list(range(1,7)):
print(new)

先看一个例子:
1.示例

table=[{2017:(8709,1453,3672,767,16879,89,45)},{2018:(8683,1654,3577,722,16552,82,46)},{2019:(7095,1321,3198,665,15338,76,46)},{2020:(7529,1436,394,687,15886,73,43)}]
#需求是对成本进行求和,之后和对应的收入做差
list_year=[2017,2018,2019,2020]
list_1=[]
list_2=[]
list_3=[]
list_4=[]
for i in range(len(table)):
       a=list(table[i][list_year[i]][0:4])
       c=int(a[0])
       d=int(a[1])
       e=int(a[2])
       f=int(a[3])
       list_1.append(c)
       list_2.append(d)
       list_3.append(e)    
       list_4.append(f)
print(f'生产成本的四年均值是{sum(list_1)/4},制造费用的四年均值是{sum(list_2)/4},劳务成本的四年均值是{sum(list_3)/4},研发支出的四年均值是{sum(list_4)/4}')

2.结果
生产成本的四年均值是8004.0,制造费用的四年均值是1466.0,劳务成本的四年均值是2710.25,研发支出的四年均值是710.25
3.问题解决
这个是在空列表里面添加相应的数值时,经常会报错说空值无法进行循环,要对我们取出的值进行进一步赋值,不能直接用来调用,因为循环一次,它的值就会变化,必须锁定之后进行添加操作。