Python读取文件时,识别点ch时出错

2024-10-01 02:26:11 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有这样一个lorem ipsum文本:

Lorem ipsum dolor sit amet, ut his semper vivendo
apeirian, graece electram sea an, vix assum euismod
luptatum ei.

Duo an diceret delicata referrentur. Cum ex mazim
legendos corrumpit, eu fuisset omnesque qui,
sit cu populo possit placerat. Lorem dolore ut has,
in his ancillae incorrupte. In esse inani nec.

我想把它分成两段,两行,像这样:

Lorem ipsum dolor sit amet, ut his semper vivendo apeirian, graece electram sea an, vix assum euismod luptatum ei.

Duo an diceret delicata referrentur. Cum ex mazim legendos corrumpit, eu fuisset omnesque qui, sit cu populo possit placerat. Lorem dolore ut has, in his ancillae incorrupte. In esse inani nec.

所以我写了这样的代码:

f = open('lorem ipsum.txt', 'r')
o = open('output.txt', 'w')
for line in f:
    if line.endswith("\.\n") == True:
        o.write(line)
    else:
        line = line[:-1] + " "
        o.write(line)

摆脱换行符的第二部分,它不是必要的工作,但代码似乎不能很好地识别点换行符。代码最后将所有文本写入一行,如下所示:

Lorem ipsum dolor sit amet, ut his semper vivendoapeirian, graece electram sea an, vix assum euismodluptatum ei. Duo an diceret delicata referrentur. Cumex mazim legendos corrumpit, eu fuisset omnesque qui, sit cu populo possit placerat. Lorem dolore ut has, inhis ancillae incorrupte. In esse inani nec.

我做错什么了?你知道吗


Tags: anlineipsumloremutdolorametsit
1条回答
网友
1楼 · 发布于 2024-10-01 02:26:11

只要有句点和新行,就尝试拆分内容。替换其他换行符并用换行符重新连接它们。你知道吗

f = open('lorem ipsum.txt', 'r')
o = open('output.txt', 'w')
contents = f.read()
new = contents.split('.\n')
o.write('\n'.join([content.replace('\n', '') for content in new]))

相关问题 更多 >