我一直在阅读关于如何判断一个字符串是否为空,或者在Python中是否有值,如果我做了一些阅读,发现如果条件不等于程序员期望的条件,Not将返回true,这是在if语句中使用的,如果不是,这是如何处理字符串的?
#!/usr/bin/python
Data = ""
if not Data:
print 'Hello'
else:
print 'Goodbye'我希望输出是Hello,并希望知道这是如何工作的
发布于 2019-07-24 05:41:21
not object本质上是bool(object) == False的简写。它通常用来否定object的真值。
但是,object的真值取决于object的类型:
object是布尔值,则True求值为True,False求值为False object是数字(整数或浮点),则0求值为False,任何其他值求值为D20是字符串,则空字符串D21求值为D22,任何其他值求值为D23(这是您目前的情况)object是集合(例如list或dict),然后,空集合([]或{})的计算结果为False,而任何其他值的计算结果为False object is None,则它的计算结果为False。除上述情况外,如果object不是None,则通常计算结果为True.这些值通常分为两类:真值和假值-真值是任何计算结果为True的值,而假值是任何计算结果为False的值。
Python程序员使用if not object:作为一种速记,一次涵盖其中的多个。一般来说,如果你不确定,你应该更具体地检查。在您的案例中:
data = ""
if data == "":
print("Hello")
else:
print("Goodbye")或者,如果你想确保,比方说,data没有以字符p结尾,你可以这样做:
data = "orange"
if not data.endswith(p):
print("data does not end with p")
else:
print("data ends with p")https://stackoverflow.com/questions/57172498
复制相似问题