如何在python中粘贴从键盘复制的文本

2024-03-28 23:39:51 发布

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

如果我执行这段代码,它就可以正常工作。但是,如果我使用键盘(Ctrl+C)复制某些内容,那么如何在python的任何输入框或文本框中粘贴剪贴板上的文本?

import pyperclip
pyperclip.copy('The text to be copied to the clipboard.')
spam = pyperclip.paste()

Tags: theto代码text文本import内容粘贴
3条回答

如果您已经在代码中使用了tkinter,那么您只需要剪贴板中的内容。然后tkinter有一个内置的方法来完成这项工作。

import tkinter as tk
root = tk.Tk()
spam = root.clipboard_get()

要在tkinter条目/Textbox中添加复制的文本,可以使用tkinter变量:

var = tk.StringVar()
var.set(spam)

并将该变量链接到Entry小部件。

box = tk.Entry(root, textvariable = var)

您需要删除行:

pyperclip.copy('The text to be copied to the clipboard.')

因为它会覆盖使用键盘复制的内容。


例如,我复制了问题的标题,下面是我如何粘贴到python shell中的:

>>> import pyperclip 
>>> pyperclip.paste() 
'How do I paste the copied text from keyboard in python\n\n'
>>> 

您需要将pyperclip.paste()传递到为条目或文本小部件插入放置字符串的同一位置。

看看这个示例代码。

有一个按钮可以复制输入字段中的内容,还有一个按钮可以粘贴到输入字段。

import tkinter as tk
from tkinter import ttk
import pyperclip

root = tk.Tk()

some_entry = tk.Entry(root)
some_entry.pack()

def update_btn():
    global some_entry
    pyperclip.copy(some_entry.get())

def update_btn_2():
    global some_entry
    # for the insert method the 2nd argument is always the string to be
    # inserted to the Entry field.
    some_entry.insert(tk.END, pyperclip.paste())

btn = ttk.Button(root, text="Copy to clipboard", command = update_btn)
btn.pack()

btn2 = ttk.Button(root, text="Paste current clipboard", command = update_btn_2)
btn2.pack()


root.mainloop()

或者,您可以只执行Ctrl+V:D

相关问题 更多 >