-
布尔类型 我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True。 True and True # ==> True True and False # ==> False False and True # ==> False False and False # ==> False 或运算:只要有一个布尔值为 True,计算结果就是 True。 True or True # ==> True True or False # ==> True False or True # ==> True False or False # ==> False 非运算:把True变为False,或者把False变为True: not True # ==> False not False # ==> True 布尔运算在计算机中用来做条件判断,根据计算结果为True或者False,计算机可以自动执行不同的后续代码。 在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码: a = True print a and 'a=T' or 'a=F' 计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢? 因为Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True,所以: True and 'a=T' 计算结果是 'a=T' 继续计算 'a=T' or 'a=F' 计算结果还是 'a=T' 要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算 1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。 2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。查看全部
-
a = 'python' print 'hello,', a == 'world' b = '' print 'hello,', b == 'world'查看全部
-
raw字符串与多行字符串 如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如: r'\(~_~)/ \(~_~)/' 但是r'...'表示法不能表示多行字符串,也不能表示包含'和 "的字符串(为什么?) 如果要表示多行字符串,可以用'''...'''表示: '''Line 1 Line 2 Line 3''' 上面这个字符串的表示方法和下面的是完全一样的: 'Line 1\nLine 2\nLine 3' 还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串: r'''Python is created by "Guido". It is free and easy to learn. Let's start learn Python in imooc!'''查看全部
-
print r'''"To be, or not to be": that is the question. Whether it's nobler in the mind to suffer.'''查看全部
-
print r'''"To be, or not to be": that is the question. Whether it's nobler in the mind to suffer.'''查看全部
-
L = range(1, 101) print L[-10:] print L[4::5][-10:]查看全部
-
def greet(str1 = 'World'): print 'Hello, '+str(str1) greet() greet('Bart')查看全部
-
import math def quadratic_equation(a, b, c): p = b*b - 4*a*c if p < 0: print 'No real root' else: x1 = (-b+math.sqrt(p))/(2*a) x2 = (-b-math.sqrt(p))/(2*a) return x1, x2 print quadratic_equation(2, 3, 0) print quadratic_equation(1, -6, 5)查看全部
-
特别注意: 这一系列条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了。查看全部
-
注意: else 后面有个“:”查看全部
-
注意: Python代码的缩进规则。具有相同缩进的代码被视为代码块。如果 if 语句判断为 True,就会执行这个代码块。 缩进请严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,否则很容易造成因为缩进引起的语法错误。 注意: if 语句后接表达式,然后用:表示代码块开始。查看全部
-
没有弄明白怎么写,暂时搁置查看全部
-
在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码: a = True print a and 'a=T' or 'a=F' 计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢? 因为Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True,所以: True and 'a=T' 计算结果是 'a=T' 继续计算 'a=T' or 'a=F' 计算结果还是 'a=T' 要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。 1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。 2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。查看全部
-
在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码: a = True print a and 'a=T' or 'a=F' 计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢? 因为Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True,所以: True and 'a=T' 计算结果是 'a=T' 继续计算 'a=T' or 'a=F' 计算结果还是 'a=T' 要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。 1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。 2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。查看全部
-
看评论 #在Pyhton 2.x版本中,支持加()和不加()两种形式 print 45678+0x12fd2 #在Pyhton 3.x版本中,必须加() print (45678+0x12fd2)查看全部
举报
0/150
提交
取消