Che*_*ese 1 python types if-statement boolean
我知道如果我想检查例如变量x是否是我将要做的str
if type(x) is str:
Run Code Online (Sandbox Code Playgroud)
但是如何检查x是字符串还是列表?所以我可以这样做,而无需添加另一个if分支
if type(x) is (str, list):
pass
else:
raise SomeError
Run Code Online (Sandbox Code Playgroud)
type(x) in (str, list)
Run Code Online (Sandbox Code Playgroud)
要么
isinstance(x, (str, list))
Run Code Online (Sandbox Code Playgroud)
这两者在语义上不相同.阅读isinstance()文档中的功能.