我有一个巨大的列表列表,我从这样的文件中导入:
letters = []
for i in range(len(string)):
let = []
for j in range(7):
line = infile.readline()
let = let + [line]
letters.append(let)
infile.readline()
它是一个很大的列表列表,但每个辅助列表的末尾都有一个\ n。
[[' ### \n', ' ## ## \n', ' ## ## \n', '## ##\n',
'#########\n', '## ##\n', '## ##\n'], ['######## \n',
'## ##\n', '## ##\n', '######## \n', '## ##\n',
'## ##\n', '######## \n'], ... ]]
如何删除\ n?所以它只是
[[' ### ', ' ## ## ', ' ## ## ', '## ##',
'#########', '## ##', '## ##'], ['######## ',
'## ##', '## ##', '######## ', '## ##',
'## ##', '######## '], ... ]]
在那里拥有空间也很重要。我试过了
letters.strip("\n")
但是没有用。
请帮忙!
编辑:我认为这可能是
的问题line = infile.readline()
但我不确定如何修复它。
我想要的输出是
### ####### ########
但我得到了这个
###
#######
########
答案 0 :(得分:3)
只要您当前的代码呼叫.readline()
,请改为.readline().rstrip('\n')
。
答案 1 :(得分:1)
尝试:
line = infile.readline()
line = line.strip('\n')
let = let + [line]
答案 2 :(得分:0)
如果您只想从最后一个元素中删除\n
,请使用:
t[-1] = t[-1].strip()
如果要从所有元素中删除\n
,请使用以下命令:
t = map(lambda s: s.strip(), t)
您可能还会考虑在拆分行之前删除\n
:
line = line.strip()