换行符也通过拆分删除
newlines also removed by splitting
我试图制作一个压缩算法和一个在 python 中使用它的压缩器。
在这样做的同时,我看到在压缩一些示例文本时,换行符消失了。
经过一些调试,我发现 split()
函数正在删除换行符。
我多次将字符串转换为列表,将列表转换为字符串,但这次 split()
函数删除了所有换行符。如果它是一个字符串:
i
hate foo
bar why do people use it what does it even mean
但是在调用split()
之后变成:
['i', 'hate', 'foo', 'bar', 'why', 'do', 'people', 'use', 'it', 'what', 'does', 'it', 'even', 'mean']
split()
没有给定参数会在任何 whitespaces 处拆分,换行符 (\n
) 是 whitespaces 之一。如果您只想在 space 个字符处拆分,则提供 " "
作为拆分的第一个参数,即
text = '''i
hate foo
bar why do people use it what does it even mean'''
elements = text.split(" ")
print(elements)
输出
['i\nhate', 'foo\nbar', 'why', 'do', 'people', 'use', 'it', 'what', 'does', 'it', 'even', 'mean']
我试图制作一个压缩算法和一个在 python 中使用它的压缩器。
在这样做的同时,我看到在压缩一些示例文本时,换行符消失了。
经过一些调试,我发现 split()
函数正在删除换行符。
我多次将字符串转换为列表,将列表转换为字符串,但这次 split()
函数删除了所有换行符。如果它是一个字符串:
i
hate foo
bar why do people use it what does it even mean
但是在调用split()
之后变成:
['i', 'hate', 'foo', 'bar', 'why', 'do', 'people', 'use', 'it', 'what', 'does', 'it', 'even', 'mean']
split()
没有给定参数会在任何 whitespaces 处拆分,换行符 (\n
) 是 whitespaces 之一。如果您只想在 space 个字符处拆分,则提供 " "
作为拆分的第一个参数,即
text = '''i
hate foo
bar why do people use it what does it even mean'''
elements = text.split(" ")
print(elements)
输出
['i\nhate', 'foo\nbar', 'why', 'do', 'people', 'use', 'it', 'what', 'does', 'it', 'even', 'mean']