Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用逻辑运算符的Python默认值_Python_Pep8 - Fatal编程技术网

使用逻辑运算符的Python默认值

使用逻辑运算符的Python默认值,python,pep8,Python,Pep8,我浏览了PEP8,但没有找到答案。如果我想使用一个初始值为None,那么最好先测试None,然后设置默认值?或者,利用与逻辑运算符一起使用时,None的计算结果为False 虽然示例1可能更常见,但示例2是否有任何异常错误?有什么陷阱和陷阱吗 例1: def some_func(abc=None): 如果abc为无: abc=“我的默认设置” 印刷(abc) 例2: def some_func(abc=None): 打印(abc或“我的默认设置”) 那么,其他的东西也被评估为false-所有这

我浏览了PEP8,但没有找到答案。如果我想使用一个初始值为
None
,那么最好先测试
None
,然后设置默认值?或者,利用与逻辑运算符一起使用时,
None
的计算结果为
False

虽然示例1可能更常见,但示例2是否有任何异常错误?有什么陷阱和陷阱吗

例1:

def some_func(abc=None):
如果abc为无:
abc=“我的默认设置”
印刷(abc)
例2:

def some_func(abc=None):
打印(abc或“我的默认设置”)

那么,其他的东西也被评估为false-所有这些东西都是用来表示“默认值”的吗?如果
abc
false
0
或者类似的东西呢?啊,那是对的!我想这就是陷阱所在。使用
仅在您不能将值计算为false时才有用。谢谢,这是很明显的。嗯,其他的东西也被评估为false-所有这些东西都是用来表示“默认值”的吗?如果
abc
false
0
或者类似的东西呢?啊,没错!我想这就是陷阱所在。使用
仅在您不能将值计算为false时才有用。谢谢,太明显了。