【问题标题】:Pyperclip not pasting new lines?Pyperclip 不粘贴新行?
【发布时间】:2017-02-26 03:22:49
【问题描述】:

我正在尝试制作一个简单的脚本,该脚本从剪贴板中取出名称列表,格式为“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,名字只是粘在一起,没有换行。我不确定有什么问题。

感谢您的帮助。

【问题讨论】:

    标签: python pyperclip


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

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

      Souce:Python 3 图解指南

      【讨论】:

        猜你喜欢
        • 2018-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多