我输入的内容是const final = users.map(({ label, key }) => ({
name: label,
value: results.map(r => r[key]).filter(el => el != null).reduce((prev, curr) => parseInt(prev) + parseInt(prev);
}));
文件中的大量字符(超过18,000个字符),我需要在每两个字符后添加一个空格。如何编写代码以再次在.TXT
文件中提供输出?
像这样;
.TXT
123456789
答案 0 :(得分:2)
enumerate()
函数在这里将为您完成繁重的工作,我们要做的就是遍历字符串并使用取模来拆分两个字符,下面是一个有效的示例! / p>
string_of_chars = "123456789101213141516171819"
spaced_chars = ""
for i, c in enumerate(string_of_chars):
if i % 2 == 1:
spaced_chars += c + " "
else:
spaced_chars += c
print(spaced_chars)
答案 1 :(得分:2)
这将产生12 34 56 78 9
t = '123456789'
' '.join(t[i:i+2] for i in range(0, len(t), 2))
如果文件很大,则您不想将其全部读取到内存中,而是要读取一个字符块,然后将它们写入输出句柄并对其进行循环。
包括读/写:
write_handle = open('./output.txt', 'w')
with open('./input.txt') as read_handle:
for line in read_handle:
write_handle.write(' '.join(line[i:i+2] for i in range(0, len(line), 2)))
write_handle.close()
答案 2 :(得分:1)
尝试以下
txt = '123456789'
print(*[txt[x:x+2] for x in range(0, len(txt), 2)])
输出
'12 34 56 78 9'