我正在尝试打印到一个如下所示的文件:
'A'
'1'
'B'
'2'
'C'
'3'
然而,给出下面的代码,结果是:
['A']
['B']
['C']
这可能是一个“垒球”问题,但我在这里做错了什么?
l1 = ['1']
l2 = ['A']
l3 = ['2']
l4 = ['B']
l5 = ['3']
l6 = ['C']
listoflists = [l1,l2,l3,l4,l5,l6]
itr = iter(listoflists)
f = open ('order.txt','w')
while True:
try:
itr.next()
s = str(itr.next())
f.write(str('\n'))
f.write(s)
except StopIteration:
break
f.close()
请您参考如下方法:
首先,不要使用iter和next(),那是for的作用。其次,您实际上是在向文件写入一个列表,而不是其内容。因此,您可以打印列表的第一个元素(即 l1[0])或遍历所有内部列表元素。
您的代码应如下所示:
l1 = ['1']
l2 = ['A']
l3 = ['2']
l4 = ['B']
l5 = ['3']
l6 = ['C']
listoflists = [l1,l2,l3,l4,l5,l6]
f = open ('order.txt','w')
for inner_list in listoflists:
for element in inner_list:
f.write(element+'\n')
f.close()
