Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。
Python 编程中 if 语句用于控制程序的执行,基本形式为:
if判断条件:
执行语句……else:
执行语句……
其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。
else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句,具体例子如下:
#!/usr/bin/python#-*- coding: UTF-8 -*-
#例1:if 基本用法
flag=False
name= 'luren'
if name == 'python': #判断变量否为'python'
flag = True #条件成立时设置标志为真
print 'welcome boss' #并输出欢迎信息
else:print name #条件不成立时输出变量名称
输出结果为:
luren #输出结果
if 语句的判断条件可以用>(大于)、=(大于等于)、<=(小于等于)来表示其关系。
当判断条件为多个值时,可以使用以下形式:
if判断条件1:
执行语句1……elif判断条件2:
执行语句2……elif判断条件3:
执行语句3……else:
执行语句4……
实例如下:
#!/usr/bin/python#-*- coding: UTF-8 -*-#例2:elif用法
num= 5
if num == 3: #判断num的值
print 'boss'
elif num == 2:print 'user'
elif num == 1:print 'worker'
elif num < 0: #值小于零时输出
print 'error'
else:print 'roadman' #条件均不成立时输出
输出结果为:
roadman #输出结果
由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
#!/usr/bin/python#-*- coding: UTF-8 -*-
#例3:if语句多个条件
num= 9
if num >= 0 and num <= 10: #判断值是否在0~10之间
print 'hello'
#输出结果: hello
num= 10
if num < 0 or num > 10: #判断值是否在小于0或大于10
print 'hello'
else:print 'undefine'
#输出结果: undefine
num= 8
#判断值是否在0~5或者10~15之间
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):print 'hello'
else:print 'undefine'
#输出结果: undefine
View Code
当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、
简单的语句组
你也可以在同一行的位置上使用if条件判断语句,如下实例:
#!/usr/bin/python#-*- coding: UTF-8 -*-
var= 100
if ( var == 100 ) : print "变量 var 的值为100"
print "Good bye!"
以上代码执行输出结果如下:
变量 var 的值为100
Good bye!
练习题
1.使用while循环输入1 2 3 4 5 6 8 9 10
#!/usr/bin/python#-*- coding:UTF-8 -*-
n= 1
while n<11:if n==7: #if嵌套用法
pass #pass 跳过用法
else:print(n) #本行缩进
n=n+1
View Code
i = 1
while i < 11:if i != 7:print(i)
i= i + 1
View Code
2.求1-100的所有数的和
#!/usr/bin/python#-*- coding: utf-8 -*-
n=1s=0while n<101:
s=s+nif n==100:print(s)else:passn=n+1
"""求1-100的所有数的和
1+2+3+4 .....+99+100
当n=1时候 s=0 。。。1
当n=2时候 s=1 。。。3
当n=3时候 s=3 。。。6
当n=4时候 s=6 。。。10"""
View Code
3.输出1-100内的所有奇数
#!/usr/bin/python#-*- coding: utf-8 -*-
n=1
while n<101:
press= n%2 #取余数,余数为1说明不能整除,则为奇数
if press ==0:pass
else:print(n)
n=n+1
View Code
4.输出1-100内的所有偶数
#!/usr/bin/python#-*- coding: utf-8 -*-
n=1
while n<101:
press= n%2 #取余数,余数为零说明能整除,则为偶数
if press ==0:print(n)else:passn=n+1
View Code
5.求1-2+3-4+5....99的所有数的和
#!/usr/bin/env pyhton#-*- coding:utf-8 -*-
"""给x赋值为0,给y赋值为0,while真,循环开始
如果x和2的余数等于0,那么x就为偶数,y的赋值就等于y减去x
否则x就为奇数,y的赋值就等于y加x
如果x等于100了,break跳出当前循环,x的赋值等于x加1一直循环到x等于100
打印y"""
#求1-2+3-4+5...99的所有数的和
x =0
y=0whileTrue:if 0 == x % 2:
y= y -xelse:
y= y +xif x ==100:breakx+= 1
#x=0 y=0 值0#x=1 y=1 值1#x=2 y=1-2 值-1#x=3 y=-1+3 值2#x=4 y=2-4 值-2
print(y)
View Code
6.用户登录(三次机会重试)
con =0while con < 3:
user= input('>>>')
paw= input('>>>')if user=="123" and paw=="123456":print('登录成功')break
else:print('登录失败')
con= con +1
View Code