私がコーディングしたいものの最も基本的な形式は、次のようなコードです。
import threading
arr = []
def test(id):
global arr
arr.append(id)
threading.Thread(target=test, args="8")
print(arr)
私がやりたいのは、arrというグローバル変数に「8」を追加することです。しかし、これは発生せず、print(arr)は次の出力を提供します。
[]
ただし、このコードを使用すると、すべて正常に機能します。
import threading
arr = []
def test(id):
global arr
arr.append(id)
test("8")
print(arr)
問題はスレッドにあるようですが、どうすればスレッドを使用して、関数テスト内でグローバル変数の値を変更できますか?
また、実際に関数を実行するには、スレッドを開始する必要があります test
import threading
arr = []
def test(id):
global arr
arr.append(id)
t = threading.Thread(target=test, args="8")
t.start()
t.join()
print(arr)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加