22

Nói rằng tôi có một chức năng giống như:Làm thế nào để chuyển một biến theo tên cho một Chủ đề bằng Python?

def _thread_function(arg1, arg2=None, arg3=None): 
    #Random code 

Bây giờ tôi muốn tạo ra một chủ đề sử dụng chức năng đó, và đem lại cho nó arg2 nhưng không arg3. Tôi đang cố gắng thực hiện điều này như sau:

#Note: in this code block I have already set a variable called arg1 and a variable called arg2 
threading.Thread(target=self._thread_function, args=(arg1, arg2=arg2), name="thread_function").start() 

Mã trên cho tôi lỗi cú pháp. Làm thế nào để sửa chữa nó để tôi có thể vượt qua một đối số cho các chủ đề như arg2?

Trả lời

37

Sử dụng kwargs parameter:

threading.Thread(target=self._thread_function, args=(arg1,), 
       kwargs={'arg2':arg2}, name='thread_function').start() 
+0

oh, cảm ơn, mà dường như để làm điều đó. – Dylan

Các vấn đề liên quan