2011-11-09 29 views
10

Tôi đang cố gắng nhập mô-đun luồng, tuy nhiên, dường như tôi gặp lỗi không có lý do chính đáng. Đây là mã của tôi:Lỗi nhập phân luồng mô-đun 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() 

Và các lỗi:

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 . . . 

stats Python:

Python 2.7.2 (mặc định, ngày 12 tháng 6 năm 2011, 15:08:59) [ MSC v.1500 32 bit (Intel)] để giành chiến thắng 32

+5

Bạn có tệp có tên "threading.py" trong thư mục hiện tại của mình không? Nếu vậy, điều này có lẽ sẽ là nguyên nhân của việc không có thuộc tính Thread. –

Trả lời

46

tôi nghĩ rằng tất cả những gì bạn cần chỉ là đổi tên tên của tập tin làm việc của bạn, bởi vì tên tập tin của bạn cũng giống như tên module:

threading.py

hoặc bạn có tập tin threading.py sai trong thư mục làm việc của bạn

+0

Tôi bối rối là tại sao câu trả lời này không tồn tại khi tôi để lại bình luận ở trên. Dù sao, bạn đánh tôi với nó. –

+2

ngớ ngẩn tôi không lưu ý rằng tập tin có cùng tên với mô-đun:/ – Trent

+0

Tyler, tôi đã trả lời, sau đó câu trả lời đã xóa tạm thời để mô phỏng tình huống này trên máy tính của tôi :) –

4

Đầu tiên , bạn phải đổi tên tập tin của riêng bạn: Nó được gọi là threading.py và vì nó nằm trong Python Path, nó thay thế mô-đun luồng của thư viện Python chuẩn.

Thứ hai, bạn phải tạo một thể hiện của bạn thread-lớp:

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

+1 để chỉ ra lỗi tiếp theo phát sinh. –

+0

Yep: D quá đúng – Trent

0

_thread.start_new_thread (func *)

+0

đây là cú pháp mới cho python 3 – Brendan

0

Tôi nghĩ rằng bạn đã sử dụng luồng tên hiện tại của bạn làm việc file.Change của bạn tên tệp có tên khác.Đó sẽ hoạt động. Nó cũng hoạt động cho tôi quá

+0

nó đã được đề xuất bởi một người dùng khác. –