本文利用的是Python 3.x版本,建议学习3.x版本python
如下是数之间常见的比较操做,例如5>3
就是数学意义上的比较,5
是大于3
的,因此这个式子的值是True
。如何比较,根据两个数之间的符号判断便可。这里要注意的是!=
是不相等的意思,==
是相等的意思。例如5==3
这显然是不对的,因此式子的值是False
编辑器
# i j是变量名 i > j i >= j i < j i <= j i == j i != j
not a #若是a是True则 结果为False,反之同理 a and b #同时为True时,结果为True a or b #至少一个为True,结果为True
在布尔值之间进行运算,以前说数据类型的时候也说过。咱们说了例如5>3
这样的比较的式子的值是布尔值,也就是说能够将式子进行逻辑运算。例如函数
5>3 and 5==3 #至关于True and False结果是False
下面是测试结果oop
计算机能够进行自动化操做,由于能够按照咱们给定的条件判断执行,因此分支判断是必不可少的。简单来讲就是,若是条件A成立,那么作些什么,不成立作些什么,例如若是今天下雨,我就不出门。学习
最简单的条件判断语句以下,有几个地方容易出错,条件后要用冒号,if
条件块里的代码要进行缩进,4
个空格,若是了解其余语言的同窗应该知道,不少语言的代码块是靠大括号{}
来标识的。为何要有代码块?代码块内的代码的层次是同样的。举个例子,若是不区分代码块,那么若是if
判断条件成立后,代码究竟要执行到哪里?因此当条件成立时,执行这个if
后的代码块内的内容。必定要注意缩进,否则在py
中会出错的。固然如今的代码编辑器多数都很智能,在写完冒号后敲击回车,就能够自动缩进4
个空格,我用的VScode
就是这样的,很方便。测试
#若是<条件>为True,则执行if块 #里的操做,注意缩进和冒号!! if <条件>: 操做1 操做2 …… #实例 x = 6 if x>3 and x<8: print("hello") #结果会打印出hello
接下来稍微复杂,就是if else
,意思是若是if
判断的条件成立(结果为True
),则执行if
代码块内的代码,若是不成立则执行else
代码块内的代码。简单来讲就是若是条件成立,则执行if
代码块内的代码,不然执行else
内的代码。else
和if
同样也要加冒号以及代码块的缩进。code
#先执行if的<条件>查看是否为True, #若是为True则进入if块,不会进入 #else,若是为False则进入else,不进入if if <条件>: 操做1 操做2 …… else: 操做1 操做2 …… #实例 x = 6 if x > 7: print(1) else: print(2) #结果会打印出2
接下来是多条件判断,以上的判断都是单条件,非此即彼的判断。多条件判断能够用多个条件来判断,先查看条件1
是否成立,若是成立则进入代码块执行,若是条件1
不成立,继续看条件2
是否成立……多条件用elif
也要加冒号以及代码块缩进。blog
# 多重条件,先看是否能进if, # 若是没进则继续判断是否能进elif…… # 若是都没进,且有else的话,进入else if <条件1>: 操做1 操做2 …… elif<条件2>:# elif能够有多个 操做1 操做2 …… else:# else能够没有 表达式 表达式 …… #实例 x = 6 if x > 10: print(1) elif x > 7 and x < 9: print(2) elif x > 4 and x < 7: print(3) else: print(4) #结果会打印出3
这里再说一下多重条件和多个if
的区别,在多重条件中,一旦某一条件成立,那么以后的代码就不会执行了,就不会再去判断以后的条件了。input
if <条件1>:#每一个条件都要判断 操做 if <条件2>:#每一个条件都要判断 操做 if <条件3>:#每一个条件都要判断 操做 if <条件1>:#若是条件1成立,再也不判断后面的条件 操做 elif <条件2>: 操做 elif <条件3>: 操做
嵌套条件判断,不建议过深的嵌套数学
if <条件1>: if <条件2>: 操做 else: 操做 else: 操做
练习一下,要求用户从控制台输入两个float数(x,y),要给出提示(例如:请输入数x),判断x y的大小,若是相等则输出相等。若是x大则输出x大,若是x小则输出x小。若是x大于y时,若是y不等于0,则输出x/y的数值。
x = float(input("请输入数x:")) y = float(input("请输入数y:")) if abs(x-y)<1.0e-9: print("x,y相等") elif x > y: print("x大于y") if abs(y)>1.0e-9: print("x/y=",x/y) else: print("x小于y")
解释一下abs(x-y)<1.0e-9
,abs
是求绝对值函数,当x
和y
的差值小于1^(-9)
时,就认为x
和y
是相等的,这是由于浮点数的表示是有偏差的,用==
来比较很危险,因此只要在咱们须要的精度内相等便可。
当咱们须要执行大量类似的操做时,这时循环就派上用场了,首先说一下while
循环。
while <条件>:#注意冒号和4个空格的缩进 操做 ……
若是<条件>
为True
,则执行while
块里的全部操做,而后继续检查<条件>
是否为True
,一直重复块里的表达式,直到<条件>
为False
,以下例子
n = 0 while n < 5: print(n) n = n + 1
for
循环,相对于while
更加肯定执行的次数,while
根据条件来肯定是否执行,而for
一般是给定了执行的次数。
for <变量> in range(<一些数字>): <表达式>#注意冒号和4个空格的缩进 …… #实例 for v in range(6): print(v) #结果会打印0-5 sum = 0 for i in range(101): sum = sum + i #求0-100的和
至关于每次把值赋予给变量
,而后在代码块内部可使用这个变量
,
默认的参数是start=0
,表明从哪一个数开始,step=1
,表明步长,意味着每次增长多少,数的范围是0~stop-1
mysum = 0 for i in range(7,10): mysum += i print(mysum) #求7 8 9的和
mysum = 0 for i in range(5,11,2): mysum += i print(mysum) #求5 7 9的和
break
表示当即退出循环,跳过剩下在块里的表达式,仅仅退出最里层的循环!简单来讲就是给一个条件,当这个条件成立时,退出循环,常常和if
搭配使用。
mysum = 0 for i in range(5,11,2): mysum += i #当mysum等于5的时候,退出循环 if mysum == 5: break musum += 1 print(mysum)
for
break
提早结束循环变量
能够帮助计数while
循环来重写for
循环while
break
提早结束循环for
循环重写while
到此为止有了判断、循环、输入、输出后,就能够写一些简单的程序了
若是以为不错,能够分享~,能够关注公众号~