2024-04-25 09:24:26 发布
网友
Python是否有类似于空字符串的变量,您可以在其中执行以下操作:
if myString == string.empty:
不管怎样,检查空字符串值最优雅的方法是什么?每次检查空字符串时,我都发现硬编码不太好。
从PEP 8,在“Programming Recommendations” section:
For sequences, (strings, lists, tuples), use the fact that empty sequences are false.
所以你应该使用:
if not some_string:
或:
if some_string:
为了澄清这一点,如果序列是空的或不是空的,则在布尔上下文中对其求值到False或True。它们不等于False或True。
False
True
最优雅的方法可能是简单地检查它是真是假,例如:
if not my_string:
但是,您可能需要删除空白,因为:
>>> bool("") False >>> bool(" ") True >>> bool(" ".strip()) False
不过,在这方面您可能应该更明确一点,除非您确定该字符串已通过某种验证,并且是可以通过这种方式测试的字符串。
空字符串是"falsy",这意味着它们在布尔上下文中被视为false,因此您可以这样做:
if not myString:
如果您知道您的变量是字符串,则这是首选方法。如果变量也可以是其他类型,那么应该使用myString == ""。有关布尔上下文中为false的其他值,请参阅Truth Value Testing上的文档。
myString == ""
从PEP 8,在“Programming Recommendations” section:
所以你应该使用:
或:
为了澄清这一点,如果序列是空的或不是空的,则在布尔上下文中对其求值到
False
或True
。它们不等于False
或True
。最优雅的方法可能是简单地检查它是真是假,例如:
但是,您可能需要删除空白,因为:
不过,在这方面您可能应该更明确一点,除非您确定该字符串已通过某种验证,并且是可以通过这种方式测试的字符串。
空字符串是"falsy",这意味着它们在布尔上下文中被视为false,因此您可以这样做:
如果您知道您的变量是字符串,则这是首选方法。如果变量也可以是其他类型,那么应该使用
myString == ""
。有关布尔上下文中为false的其他值,请参阅Truth Value Testing上的文档。相关问题 更多 >
编程相关推荐