Итак, у меня есть этот код на Python, в котором я определил некоторые global
переменные и использовал их в разных частях
def compute_sigma(mellin, alpha_power, beta_power, input_path, qr_epsilon):
global tf
...
return taus, error_mellin, error_factorization
## first part
global tf
tf = ...
...
taus, error_mellin, error_factorization = compute_sigma(...)
sys.exit()
## second part
global tf ## where the warning is generated
tf = ...
...
taus, error_mellin, error_factorization = compute_sigma(...)
Я пытался выполнить первую часть, выйдя из программы, где sys.exit()
есть, но кажется, что Python не полностью игнорирует код после sys.exit()
, он показывает следующее предупреждающее сообщение
verification.py:257: SyntaxWarning: name 'tf' is assigned to before global declaration
В строке 257 находится последнее определение global
.
Есть ли более умный способ выхода из программы?Я пробовал os._exit ()
, exit()
и quit()
, ни один из них не сработал.
Также, пожалуйста, дайте мне знать, если вам нужно воспроизвести предупреждение, я могу сделать игрушечную функцию для вас, чтобы проверить.
Заранее спасибо!