粘贴到 Python 时如何截断回车 return
How to truncate carriage return when pasting into Python
我创建了一个将复制到系统剪贴板的函数。但是,当我从剪贴板粘贴值时,它会自动执行回车 return。这极大地影响了我程序中的计算。
注意:不能使用 Pyperclip 或任何其他安装。为此,我只能使用 Python IDLE 3.8 中包含的内容
我试过将 strip() 方法与 clipboard_answer 变量一起使用。距离下一行 return 秒
def copy(solution_answer):
clipboard_answer = str(solution_answer)
command = 'echo ' + clipboard_answer.strip() + '| clip' # Creates command variable, then passes it to the os.system function as an argument. CMD opens and applys echo (number calculated) | clip and runs the clipboard function
os.system(command)
print("\n\n\n\n",solution_answer, "has been copied to your clipboard") # Used only for confirmation to ensure copy function runs
假装“|”图标是光标
我有一个解决方案已复制到我的剪贴板,即 25
当我在程序中按 CTRL+V 时,我希望它这样做
25 |
但实际上光标是这样的
25
|
import pyperclip
pyperclip.copy(solution)
这应该可以解决问题。
编辑:再次使用 tkinter 解决方案,因为 pyperclip 不是 OP 的选项。
from tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_clear()
r.clipboard_append("hello world")
r.update()
不要使用 os.system
。使用 subprocess
,您可以将字符串直接提供给 clip
的标准输入,而无需调用 shell 管道。
from subprocess import Popen, PIPE
Popen(["clip"], stdin=PIPE).communicate(bytes(solution_answer))
我创建了一个将复制到系统剪贴板的函数。但是,当我从剪贴板粘贴值时,它会自动执行回车 return。这极大地影响了我程序中的计算。
注意:不能使用 Pyperclip 或任何其他安装。为此,我只能使用 Python IDLE 3.8 中包含的内容
我试过将 strip() 方法与 clipboard_answer 变量一起使用。距离下一行 return 秒
def copy(solution_answer):
clipboard_answer = str(solution_answer)
command = 'echo ' + clipboard_answer.strip() + '| clip' # Creates command variable, then passes it to the os.system function as an argument. CMD opens and applys echo (number calculated) | clip and runs the clipboard function
os.system(command)
print("\n\n\n\n",solution_answer, "has been copied to your clipboard") # Used only for confirmation to ensure copy function runs
假装“|”图标是光标
我有一个解决方案已复制到我的剪贴板,即 25
当我在程序中按 CTRL+V 时,我希望它这样做
25 |
但实际上光标是这样的
25
|
import pyperclip
pyperclip.copy(solution)
这应该可以解决问题。
编辑:再次使用 tkinter 解决方案,因为 pyperclip 不是 OP 的选项。
from tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_clear()
r.clipboard_append("hello world")
r.update()
不要使用 os.system
。使用 subprocess
,您可以将字符串直接提供给 clip
的标准输入,而无需调用 shell 管道。
from subprocess import Popen, PIPE
Popen(["clip"], stdin=PIPE).communicate(bytes(solution_answer))