在我的一个脚本中,我使用了python的字符串和线程中的join()方法。我尝试使用import ... as
重命名模块名称,如下所示:
import str.join as sjoin
import threading.Thread.join as tjoin
但我总是无法正确导入字符串连接。我查看官方文档,join()
类路径都应该是正确的。我该怎么做才能同时使用这两个连接?
修改
最初我没有导入str.join()。但是因为我遇到了类型错误,我想我应该重命名join()。但后来,我意识到我将错误的东西传入str.join(),这就是我遇到类型错误的真正原因。我的错!
答案 0 :(得分:2)
str.join()
是一个用于字符串实例的方法,例如:
>>> ", ".join([1, 2, 3])
1, 2, 3
无需导入任何内容。我在这里使用字符串文字作为示例,但当然,可以使用任何字符串。这就是将来自iterable(传递给方法)的字符串连接在一起的“粘合剂”。
threading.Thread.join()
也是如此 - 您应该创建Thread
类的实例并在该实例上使用join()
方法。
请注意,由于Python的工作方式,你可以直接从类中访问这些方法,然后将实例作为第一个参数传递,但是,这通常是一个非常糟糕的主意,因为它比阅读更难,工作量更大。正常地打电话给他们。
答案 1 :(得分:-1)
str是内置的,而不是模块,因此您无法从中导入。但是你可以这样做:
sjoin = str.join
import threading.Thread.join as tjoin