Похоже, вы пытаетесь использовать assert
:
>>> a = 2
>>> assert a == 1, "a == 1 expected"
Traceback (most recent call last):
File "<pyshell#30>", line 1, in <module>
assert a == 1, "a == 1 expected"
AssertionError: a == 1 expected
Как вы можете видеть, когда a
не 1
он бросает исключение.
>>> bugfile = None
>>> assert bugfile == None, "We still have a bugfile = " + bugfile
Как вы можете видеть, когда bugfile
является None
он ничего не делает.
>>> bugfile = 'omg! a bug'
>>> assert bugfile == None, "We still have a bugfile = " + bugfile
Traceback (most recent call last):
File "<pyshell#34>", line 1, in <module>
assert bugfile == None, "We still have a bugfile = " + bugfile
AssertionError: We still have a bugfile = omg! a bug
И когда это что-то, он бросает исключение!
Если вы беспокоитесь об исключениях, попробуйте следующее:
>>> bugfile = 'omg! a bug'
>>> if not bugfile == None: print "We still have a bugfile = " + bugfile
We still have a bugfile = omg! a bug # as you can see, it printed.
>>> bugfile = None
>>> if not bugfile == None: print "We still have a bugfile = " + bugfile
>>> # everything okay
Вы знаете, что вы печатаете строку только тогда, когда 'bugFile' принимает значение ложь? – aIKid
Mate, это только ухудшило ситуацию. :/ – wdh
Путаница в том, что вы сказали, что хотите проверить, является ли 'bugFile' _defined_. Правда, вы хотите узнать, является ли это «Нет». Есть разница. – iCodez