python3中的错误(TypeError:';模块';对象不可调用)

python3中的错误(TypeError:';模块';对象不可调用),python,python-3.x,tkinter,pyperclip,Python,Python 3.x,Tkinter,Pyperclip,我是编程新手,我正在尝试制作一个简单的程序,当它超过10个字符时,用字符串替换我复制的内容,代码如下: import pyperclip import tkinter as Tk while True: r = Tk() r.withdraw() try: selection = r.selection.get(selection="CLIPBOARD") except tk.TclError: selection = None sleep(0.1)

我是编程新手,我正在尝试制作一个简单的程序,当它超过10个字符时,用字符串替换我复制的内容,代码如下:

import pyperclip
import tkinter as Tk
while True:
 r = Tk()
 r.withdraw()
 try:
      selection = r.selection.get(selection="CLIPBOARD")
 except tk.TclError:
      selection = None
      sleep(0.1)

 try:
     selection = r.selection.get(selection="CLIPBOARD")
 except tk.TclError:
     selection = None
     r.clipboard_clear()
     if len(result) > 10:
       pyperclip.copy("aaa")
但这给了我一个错误:

Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
TypeError: 'module' object is not callable
>>>
回溯(最近一次呼叫最后一次):
文件“”,第2行,在
TypeError:“模块”对象不可调用
>>>

我知道这可能与tkinter模块有关,但我真的不知道它是什么或如何解决它。

您试图调用
Tk
,它实际上是
tkinter
模块的别名。在这种情况下,您要做的是:

r = Tk.Tk()

Tk是一个模块,基本上,它是tkinter模块,只是在代码中用另一个名称调用它。这就是为什么您不能执行
Tk()
。 您可能希望执行以下操作:

r = Tk.NameOfClass()


将NameOfClass替换为您要使用的类的名称。

Tk()
应该是
Tk.Tk()
它说的是第2行。第一个
Tk
是模块名,第二个
Tk
是类名。我这样做了,现在它说:回溯(最近一次调用):文件“”,第5行,在文件“C:\Program Files(x86)中\Python38-32\lib\tkinter_init_u2;.py”,第2345行,在getattr返回getattr(self.tk,attr)AttributeError:“\u tkinter.tkapp”对象没有属性“selection”应该是什么?这不是Tkinter属性。
r = Tk.NameOfClass()
from Tkinter import NameOfClass