我有一个循环来填充列表,使用循环格式 我应该创建一个列表,然后 - 使用循环 - 用N个元素填充列表,并将每个列表元素设置为其索引乘以10。
N也可能为0.在这种情况下,我应该输出一个空列表[],这就是我认为绊倒我的原因。
list = [N]
for x in range(N):
innerlist = []
for y in range(N):
innerlist.append(list)
list.append(innerlist)
if N == 0:
list = []
print (list)
我认为if(N==0)
语句会重置列表的值,但事实并非如此。我应该输出[]
,而是输出[0]
。
答案 0 :(得分:3)
>>> N = 10
>>> my_list = [iter * 10 for iter in range(N)]
>>> print(my_list)
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
>>> N = 0
>>> my_list = [iter * 10 for iter in range(N)]
>>> print(my_list)
[]
答案 1 :(得分:1)
lst = range(8)
innerlst = []
for i in lst:
if 0 in lst:
innerlst = []
continue
else:
innerlst.append(i*10)
答案 2 :(得分:0)
如果您只是在之前添加条件进入整个循环,您将获得预期的结果:
N = 10
list = []
if (N > 0):
for i in range(N):
list.append(i*10)
print(list)
# output: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
答案 3 :(得分:0)
myList = []
if N == 0:
print(myList)
else:
for i in range(N):
myList.append(i * 10)
print(myList)
答案 4 :(得分:-1)
我自己只是一个初学者,但我发现这个符合您的问题。我不知道如何正确格式化实际代码,但希望这会有所帮助!
my_list = []
my_newlist =[]
if N <= 0:
print(my_list)
else:
for x in range(N):
my_list.append(x)
my_newlist= [i* 10 for i in my_list] # not getting the statement 'i * 10 for in i' statement
print(my_newlist)
[Python] #We为你提供一个数字N. #Create a list然后,使用循环,填充 - Pastebin.com。 (2017年11月29日)。取自https://pastebin.com/2F0zXq6z