2011-11-09 11 views
10

Sto cercando di importare il modulo di threading, tuttavia, mi sembra di ottenere errori senza una buona ragione. Qui è il mio codice:Errore di importazione del modulo di threading Python

import threading 

class TheThread (threading.Thread): 
    def run (self): 
     print 'Insert some thread stuff here.' 
     print 'I\'ll be executed...yeah....' 
     print 'There\'s not much to it.' 

TheThread.Start() 

E gli errori:

Traceback (most recent call last): 
    File "threading.py", line 1, in <module> 
    import threading 
    File "C:\Users\Trent\Documents\Scripting\Python\Threading\threading.py", line 
3, in <module> 
    class TheThread (threading.Thread): 
AttributeError: 'module' object has no attribute 'Thread' 
Press any key to continue . . . 

Python Statistiche

Python 2.7.2 (impostazione predefinita, 12 giugno 2011, 15:08:59) [ MSC v.1500 32 bit (Intel)] sulla vittoria 32

+5

Hai un file chiamato "threading.py" nella tua directory corrente? Se è così, probabilmente sarebbe la causa del fatto che non ci sono attributi Thread. –

risposta

46

penso che tutto ciò che serve è solo per rinominare il nome del file di lavoro, perché il nome del file è lo stesso nome del modulo:

threading.py

o si dispone di file di threading.py sbagliato nella directory di lavoro

+0

Sono confuso sul motivo per cui questa risposta non esisteva quando ho lasciato il mio commento sopra. Ad ogni modo, mi hai battuto su di esso. –

+2

non ricordo che il file era lo stesso nome del modulo:/ – Trent

+0

Tyler, ho risposto, quindi ho cancellato temporaneamente la risposta per simulare questa situazione sul mio computer :) –

4

First , devi rinominare il tuo file: si chiama threading.py e dal momento che si trova nel percorso Python sostituisce il modulo di threading della libreria standard di Python.

In secondo luogo, è necessario creare un'istanza della classe filo:

TheThread().start() # start with latter case 
+2

+1 per indicare l'errore successivo che si sarebbe verificato. –

+0

Sì: D troppo vero – Trent

0

_thread.start_new_thread (func *)

+0

questa è la nuova sintassi per python 3 – Brendan

0

Penso che usati threading nome al tuo attuale lavoro file.Change tua nome del file con nome diverso. Funzionerà. Funzionerà anche per me

+0

già suggerita da un altro utente. –

Problemi correlati