gpt4 book ai didi

python - 有没有办法直接将 python 输出发送到剪贴板?

转载 作者:IT老高 更新时间:2023-10-28 21:07:16 25 4
gpt4 key购买 nike

例如,如果一个 python 脚本会输出一个字符串,给出一个新写入的文件的路径,我将在运行脚本后立即对其进行编辑,将它直接发送到系统剪贴板会非常好而不是 STDOUT

最佳答案

您可以使用外部程序,xsel :

from subprocess import Popen, PIPE
p = Popen(['xsel','-pi'], stdin=PIPE)
p.communicate(input='Hello, World')

使用 xsel,您可以设置要处理的剪贴板。

  • -pPRIMARY 选择一起使用。那就是中间点击。
  • -sSECONDARY 选择一起使用。不知道这个还有没有用。
  • -bCLIPBOARD 选项一起使用。那是你的 Ctrl + V 之一。

阅读有关 X 剪贴板的更多信息 herehere .

我创建了一个快速而肮脏的函数来处理这个问题:

def paste(str, p=True, c=True):
from subprocess import Popen, PIPE

if p:
p = Popen(['xsel', '-pi'], stdin=PIPE)
p.communicate(input=str)
if c:
p = Popen(['xsel', '-bi'], stdin=PIPE)
p.communicate(input=str)

paste('Hello', False) # pastes to CLIPBOARD only
paste('Hello', c=False) # pastes to PRIMARY only
paste('Hello') # pastes to both

你也可以试试 pyGTK 的 clipboard :

import pygtk
pygtk.require('2.0')
import gtk

clipboard = gtk.clipboard_get()

clipboard.set_text('Hello, World')
clipboard.store()

这适用于我的 Ctrl + V 选择。

关于python - 有没有办法直接将 python 输出发送到剪贴板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7606062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com