私は、GSM ネットワークに対して Ussd コマンドを実行しています。詳細が不明なため、コマンドが失敗することがあります。
私は次のことをしたいと思います:
GSM ネットワークに発行されたコマンドが失敗した場合は 4 秒待ち、再度失敗した場合はさらに 6 秒待ちます。再び失敗した場合、終了して「unknown GSM Operator Error」のようなものを返します
ここでの私の質問は、try/except を使用して Python でこのループを処理する方法です。
これは、try/except を使用しないコードです。
def getGsmCode()
code = somecommand('xyz')
return code[0]
これを実装しようとしましたが、醜いです。これはそれを行うための最良の方法ですか?
def getGsmCode()
try:
code = somecommand('xyz')
return code[0]
except:
pass
# I will try againg after wait 4 seconds
time.sleep(4)
try:
code = somecommand('xyz')
return code[0]
except:
pass
# I will try again after wait 6 seconds
time.sleep(6)
try:
code = somecommand('xyz')
return code[0]
except:
pass
return "unknown GSM Operator Error"
よろしくお願いします、