我在图像处理中遇到过使用以下语句的代码:
#args is a dictionary
if not args.get("video",False)
get() 方法返回:
如果键在字典中,则为指定键的值。
如果未找到键且未指定值,则无。
如果未找到键并指定了值,则为值。
但是字典有一个关键的“video”,它是视频文件的路径,后面是这样使用的:
if args.get("video")
所以 args.get("video") 会给出文件的路径。我的问题是,这是“if”的有效语法还是我遗漏了什么?
是的,它是有效的。
只要不是,Astr
就会返回。True
""
根据文档 -真值测试:
任何对象都可以测试真值,用于 if 或 while 条件或作为下面布尔运算的操作数。
默认情况下,一个对象被认为是真的,除非它的类定义了一个返回
False
的 __bool__() 方法或一个返回零的 __len__() 方法,当与对象一起调用时。以下是大多数被认为是 false 的内置对象:• 常量定义为假:
None
和False
。• 任何数字类型的零:
0
,0.0
,0j
,Decimal(0)
,Fraction(0, 1)
• 空序列和集合:
''
,()
,[]
,{}
,set()
,range(0)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句