Python Pyperclip不粘贴新行吗?

Python Pyperclip不粘贴新行吗?,python,pyperclip,Python,Pyperclip,我正在尝试制作一个简单的脚本,它从剪贴板上取下一个名列表,格式为“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,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,名字只是粘在一起,没有新行。我不知道是什么让人抓狂


谢谢您的帮助。

显然我需要使用“\r\n”而不仅仅是“\n”。我不知道这到底是为什么,但我在互联网上找到了答案,它起了作用。

要在文件中包含换行符,需要显式地将它们传递给file方法。 在Unix平台上,传递到.write的字符串应以\n结尾。同样地,我们每个人 传递到.writelines的序列中的字符串应以\n结尾。在…上 Windows,换行符字符串为\r\n。 要以跨平台方式编程,请在操作系统模块中找到linesep字符串 为平台定义正确的换行符字符串:

>>> import os
>>> os.linesep # Unix platform
'\n'
资源:Python 3图解指南