Проблема вовсе не в модуле webbrowser
, а в следующей строке:
elif '.py' or '.txt' or '.csv' or '.ppt' in TODO:
, которая всегда True
и должна быть записана. Вот простой способ сделать это:
elif '.py' in TODO or '.txt' in TODO or '.csv' in TODO or '.ppt' in TODO:
Вы не можете увидеть, что на самом деле не так, потому что у вас есть «голые» except:
и pass
до go вместе с try:
, которая скрывает все ошибки, включая те, о которых вы никогда не думали, как синтаксические ошибки. (На самом деле есть еще одна другая проблема, с которой вы еще не сталкивались.)
Чтобы избежать этого, по крайней мере, во время разработки и отладки, я предлагаю вам изменить ее как минимум:
except Exception as exc:
print('Exception occurred: {}'.format(exc))
pass
или даже лучше:
except:
traceback.print_exc()
pass
, поэтому вы получите некоторое представление о том, почему он не работает, как вы ожидали.
Обновление:
Вот немного более продвинутый способ написания этого elif
:
elif any(ext in TODO for ext in ('.py', '.txt', '.csv', '.ppt')):