我有一个类文件LinkedListADT.py,其中我有类LinkedList。我为这个类定义的一个方法如下:
def test(self, index=None):
if index:
print(str(index))
else:
print("Index not found")
现在,从我的其他文件(不是类)中我定义了以下函数:
def test():
tester = LinkedListADT.LinkedList()
tester.test(0)
正在打印的结果是"未找到索引" - 我的问题是,可以作为方法或常规函数的可选输入传递吗?
我对Python很陌生,我假设0被解释为假。无论是否是这种情况,我都可以使用一种解决方法吗?
答案 0 :(得分:2)
正如您所猜测的那样,0
被视为“虚假”。该文档列出了其他"falsey" values。
print bool(0)
# False
但你可以像这样查看
def test(self, index=None):
if index is not None:
print(str(index))
else:
print("Index not found")
此程序确保输入不是None
,如果不是,则提供用户(不论其真实性)。