我已經很好地理解了python的try-except子句,但是在嘗試將它放入函數中時遇到了問題。Python嘗試 - 除了函數內部
>>> def tryAppend(child, parent):
... try:
... parent.append(child)
... except NameError:
... print "WRONG NAME"
>>> var1 = []
>>> var2 = 'test2'
>>> tryAppend(var2, var1) #works, no error
>>> tryAppend(foo, var1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'foo' is not defined
它幾乎就像python沒有看到try:語句。任何幫助表示讚賞。
VAR2是字符串「test2的」命名空間。如果你想輸入一個字符串'foo',那麼你必須將其封裝在''或'「中,否則,如果foo沒有在程序中的其他地方作爲函數或類或其他函數定義,則不起作用。你基本上是在聲明它之前嘗試使用一個名稱空間。 – momo 2010-11-10 19:19:14