質問
非常にイライラするPythonの問題があります。このコードでは
fixedKeyStringInAVar = "SomeKey"
def myFunc(a, b):
global sleepTime
global fixedKeyStringInAVar
varMe=int("15")
sleepTime[fixedKeyStringInAVar] = varMe*60*1000
#more code
これで機能します。しかし、この関数を実行すると時々次のようなメッセージが表示されます
TypeError: 'int' object does not support item assignment
いくつかのテストケースを試しましたがエラーを再現できなかったので、非常に迷惑ですが、コード全体を実行すると非常に頻繁に発生します。コードはデータベースからデータを読み取り、サイトなどにアクセスします。データは複数のソースから読み取られ、変更されるサードパーティの入力(Webサイト)に依存するため、データを確認するのは困難です。
このエラーは何でしょうか?
解決
使用しないでください
global
グローバル名のバインディングを変更する場合を除き、関数内のキーワードを使用してください。検索する '
sleepTime =
' コードに含めてください。int オブジェクトをバインドしていますsleepTime
プログラムのある時点で名前を付けます。
他のヒント
あなたのスリープ時間は、グローバル変数です。あなたのプログラムの中でいくつかの点でint型に変更することができます。
項目の割り当ては、あなたの関数で "fooの[バー] =バズ" の建設をされます。
所属していません StackOverflow