在python中not是逻辑判断词,用于布尔型True和False。
布尔"非" :如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 例如:
a = 0;
b = 1;
if not ( a and b ):
print "变量 a 和 b 都为 false,或其中一个变量为 false";
else:
print "变量 a 和 b 都为 true";
输出结果为:变量 a 和 b 都为 false,或其中一个变量为 false。
扩展资料
1、not 和 in 连接的用法:
not in ,如果在指定的序列中没有找到值返回 True,否则返回 False。x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。例如:
b = 20;
list = [1, 2, 3, 4, 5 ];
if ( b not in list ):
print "变量 b 不在给定的列表中 list 中";
else:
print "变量 b 在给定的列表中 list 中";
2、is 和 not 连接的用法:
is not , 是判断两个标识符是不是引用自不同对象,x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。例如:
a = 20;
b = 30;
if ( a is not b ):
print "4 - a 和 b 没有相同的标识";
else:
print "4 - a 和 b 有相同的标识";
is是看两个标识符是不是引用自一个对象,利用id()函数就可以看的很清楚,id可以理解为得到变量的内存地址而==是value判断,不同类型不一样,如:
>>>a = 3
>>>b = 3
>>>a == b
True
>>>id(a)
11163864
>>>id(b)
11163864
>>>a is b
True
>>>b is a
True
>>>a = [1,3]
>>>b = [1,3]
>>>a == b
True
>>>a is b
False
>>>id(a)
11794392
>>>id(b)
11813392
is not 就是is的否定,意义是一样的。
1、if语句Python中的if子句由三部分组成:关键字本身、用于判断结果真假的条件表达式以及当表达式为真或者非零时执行的代码块。if 语句的语法如下:
if expression:
expr_true_suite
if 语句的expr_true_suite代码块只有在条件表达式的结果的布尔值为真时才执行,否则将继续执行紧跟在该代码块后面的语句。
(1)多重条件表达式
单个if语句可以通过使用布尔操作符and、or和not,实现多重判断条件或是否定判断条件。
(2)单一语句的代码块
如果一个复合语句(例如if子句、while或for循环)的代码块仅仅包含一行代码,那么它可以和前面的语句写在同一行上。如if make_hard_copy: send_data_to_printer(),这样的单行语句是合法的, 尽管它可能方便,但这样会使得代码更难阅读, 所以推荐将这行代码移到下一行并合理地缩进。另外一个原因就是如果你需要添加新的代码, 你还是得把它移到下一行。
2、else语句
Python提供了与if语句搭配使用的else语句,如果if语句的条件表达式的结果布尔值为假,那么程序将执行 else 语句后的代码。其语法如下:
if expression:
expr_true_suite
else:
expr_false_suite
在C语言中,不会在条件语句范围外发现else语句, 但Python不同,可以在while和for循环中使用else语句,在循环中使用时,else子句只在循环完成后执行,也就是说break语句也会跳过else块。
例:显示出10到20中的数字的最大约数
在CODE上查看代码片派生到我的代码片
#!/usr/bin/env python
def showMaxFactor(num):
count = num / 2
while count >1:
if (num % count == 0):
print 'largest factor of %d is %d' % (num, count)
break
count = count - 1
else:
pr