5

Python を学ぶのは初めてで、このブログ投稿からスレッド化を試してみました。問題は、時代遅れのように見えることです:

import time
from threading import Thread

def myfunc(i):
    print ("sleeping 5 sec from thread %d" % i)
    time.sleep(5)
    print ("finished sleeping from thread %d" % i)

for i in range(10):
    t = Thread(target=myfunc, args=(i,))
    t.start()

このエラーなしでこのコードを実行するにはどうすればよいですか:

$ python helloworld.py
Traceback (most recent call last):
  File "helloworld.py", line 1, in <module>
    import threading
  File "c:\Documents and Settings\Hermione\learningPython\threading.py", line 2, in <module>
    from threading import Thread
ImportError: cannot import name Thread

私がすでにそのファイルを削除しthreading.pyたという事実(そしてそれが現れ続けている!!)と不思議なフォルダがあるのも奇妙です.__PyCache__

4

3 に答える 3

14

あなたの問題は、おそらく threading.pyc と呼ばれるバイトコード ファイルを残したというファイルがあったことです。threading.py

これも削除する必要があります。

同様の質問here

編集: python3を使用していることに気づき、__pycache__ディレクトリも削除します(これは、python3.2以降を使用してファイルが存在する場所です)。

于 2012-08-21T09:30:41.097 に答える
9

threading.py標準ライブラリモジュールを同じ名前で隠すファイルに名前を付けました。.. そうしないでください :-)

于 2012-08-21T09:27:24.717 に答える
0

threading.pyc と threading.py ファイル、または Python 3.2 を使用している場合は__pycache__ディレクトリを削除する必要があります。

于 2012-08-21T09:31:44.977 に答える