You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PyAutoGUI在Python终端粘贴代码并保存到变量?执行异常求方案

问题分析

你的代码之所以失效,核心原因是input()是阻塞式函数——程序会卡在这一行,直到你手动输入内容并按下回车,后面的PyAutoGUI操作根本没机会运行。等你完成input输入后,再执行右键粘贴已经毫无意义,因为coin变量已经拿到了你之前手动输入的内容。

解决方案

不需要模拟终端右键粘贴,直接读取系统剪贴板内容就能实现需求,这里提供几种实用方案:

方案1:直接读取剪贴板(最简单)

用pyperclip库直接获取剪贴板内容,无需任何终端交互:

  1. 先安装依赖:
pip install pyperclip
  1. 代码实现:
import pyperclip
# 直接读取剪贴板内容到变量
coin = pyperclip.paste()
print(coin)

运行后,coin变量就会自动获取当前剪贴板里的文本内容。

方案2:手动触发读取(适合需要控制时机的场景)

如果需要你手动触发读取剪贴板(比如先复制内容,再按快捷键触发),可以用keyboard库监听快捷键:

  1. 安装依赖:
pip install keyboard
  1. 代码实现:
import keyboard
import pyperclip

def fetch_clipboard():
    global coin
    coin = pyperclip.paste()
    print(f"已获取剪贴板内容:{coin}")
    # 读取完成后取消监听,避免重复触发
    keyboard.unhook_all()

# 设置快捷键为F1,按下时执行读取
keyboard.add_hotkey('f1', fetch_clipboard)
print("请先复制内容,然后按下F1键获取...")
# 程序等待快捷键触发
keyboard.wait()

运行后,你复制好内容,按下F1键,coin变量就会存储剪贴板的内容。

方案3:无第三方依赖方案

如果你的环境无法安装第三方库,也可以用Python自带的tkinter模块读取剪贴板:

import tkinter as tk
root = tk.Tk()
root.withdraw()  # 隐藏窗口
coin = root.clipboard_get()
print(coin)

这个方案无需额外安装依赖,兼容性强。

内容的提问来源于stack exchange,提问作者newor0599

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 19:45:41