1

我正在尝试制作一个简单的脚本,该脚本从剪贴板中取出名称列表,格式为“Last,First”,然后将它们粘贴回“First Last”。我正在使用 Python 3 和 Pyperclip。

这是代码:

import pyperclip
text = pyperclip.paste()
lines = text.split('\n')
for i in range(len(lines)):
    last, first = lines[i].split(', ')
    lines[i] = first + " " + last
text = '\n'.join(lines) 
pyperclip.copy(text)

当我将其复制到剪贴板时:

Carter, Bob
Goodall, Jane

然后运行脚本,它会生成: Bob CarterJane Goodall,名字只是粘在一起,没有换行。我不确定有什么问题。

谢谢你的帮助。

4

2 回答 2

2

显然我需要使用'\r\n' 而不仅仅是'\n'。我不知道为什么会这样,但我在互联网上找到了答案并且它有效。

于 2017-02-26T03:53:50.667 回答
0

要在文件中包含换行符,您需要将它们显式传递给文件方法。在 Unix 平台上,传递给 .write 的字符串应该以 \n 结尾。同样,传递给 .writelines 的序列中的每个字符串都应以 \n 结尾。在 Windows 上,换行符字符串是 \r\n。为了以跨平台方式编程,在 os 模块中找到的 linesep 字符串为平台定义了正确的换行符字符串:

>>> import os
>>> os.linesep # Unix platform
'\n'

来源:Python 3 图解指南

于 2019-12-29T11:06:38.533 回答