1、条件语句
#语法:
if <条件判断1>: <执行1>
elif <条件判断2>: <执行2>
elif <条件判断3>: <执行3>
else: <执行4>
if 语句执行有个特点,它是从上往下判断,如果在某个判断上是 True,把该判断对应的语句执行后,就忽略掉剩下的 elif 和 else
当 if 有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。
逻辑运算符:True、Falseor、and、not例:if (num >= 0 and num <= 5) or (num >= 10 and num <= 15)==、>、<、>=、<=、!=、<>
2、循环语句
for 循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法1:for条件<执行>语法2:
for条件<执行>
else
<执行>
'''for 中的语句和普通的没有区别
else 中的语句会在循环正常执行完
(即 for 不是通过 break 跳出而中断的)的情况下执行
while … else 也是一样。'''
例子:
#例1
for letter in 'Python': #第一个实例
print('当前字母 :', letter)
fruits= ['banana', 'apple', 'mango']for fruit in fruits: #第二个实例
print('当前水果 :', fruit)'''当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n
当前水果 : banana
当前水果 : apple
当前水果 : mango'''
#例2
_user = 'hjc'_pass= '123'
for i in range(4):
username= input("username:")
password= input("password:")if username == _user and password ==_pass:print("welcome...", username)break
else:print("invalid username or password")else: #只要上面的 for 循环执行完毕,才执行 else 下的内容
print("too many times retries")#例3
fruits = ['banana', 'apple', 'mango']for index inrange(len(fruits)):print('当前水果 :', fruits[index])#例4
for num in range(1, 6):print(num)else:print('done')'''1
2
3
4
5
done'''
while 循环
语法1:只要条件满足,就不断循环,条件不满足时退出循环。while判断条件:
执行语句。。。语法2:只要条件满足,就不断循环,条件不满足时执行else: 下的语句。while判断条件:
执行语句。。。else:
执行语句。。。
sum =0
n= 99
while n >0:
sum= sum +n
n= n - 2
print(sum)#在循环内部变量n不断自减,直到变为-1时,不再满足while条件,循环退出。
3、循环控制语句
break
表示跳出循环的层数,如果省略n表示跳出整个循环
例1:for letter in 'Python':#First Example
if letter == 'h':break
print('Current Letter :', letter)#Current Letter : h例2:
var= 10while var >0:print('Current variable value :', var)
var= var - 1
if var == 5:break
'''Current variable value : 10
Current variable value : 9
Current variable value : 8
Current variable value : 7
Current variable value : 6'''
continue
表示退到第n层继续循环,如果省略n表示跳过本次循环,忽略本次循环的剩余代码,进入循环的下一次循环
#第一个实例
for letter in 'Python':if letter == 'h':continue
print('当前字母 :', letter)'''当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : o
当前字母 : n'''
#第二个实例
var = 10
while var >0:
var= var - 1
if var == 5:continue
print('当前变量值 :', var)'''当前变量值 : 9
当前变量值 : 8
当前变量值 : 7
当前变量值 : 6
当前变量值 : 4
当前变量值 : 3
当前变量值 : 2
当前变量值 : 1
当前变量值 : 0'''
pass
不做任何事情,只起到占位的作用
for letter in 'Python':if letter == 'h':pass
print('这是 pass 块')print('当前字母 :', letter)'''当前字母 : P
当前字母 : y
当前字母 : t
这是 pass 块
当前字母 : h
当前字母 : o
当前字母 : n'''
4、条件语句练习
题1:
#提示输入用户名和密码#验证用户名和密码#如果错误,则输出用户名或密码错误#如果成功,则输出 欢迎,XXX!
importgetpass
name= input('请输入用户名:')
pwd= getpass.getpass('请输入密码:')if name == "alex" and pwd == "cmd":print("欢迎,alex!")else:print("用户名和密码错误")
题2:
#根据用户输入内容打印其权限#alex --> 超级管理员#eric --> 普通管理员#tony,rain --> 业务主管#其他 --> 普通用户
name = input('请输入用户名:')if name == "alex":print("超级管理员")elif name == "eric":print("普通管理员")elif name == "tony" or name == "rain":print("业务主管")else:print("普通用户")
题3:
#猜年龄
age_of_princal = 56guess_age= input("your input:")ifguess_age.isdigit():
guess_age=int(guess_age)if guess_age ==age_of_princal:print("yes")elif guess_age >age_of_princal:print("you input is large")else:print("you input is smaller")else:print("you input is no num")
5、循环语句练习
a.使用while循环实现辅出2-3+4-5+6…+100的和
count= 1s=0while count <= 10:if count % 2 ==0:
s+=countelse:
s-=count
count+= 1
print(s)
b.使用while循环实现输出1,2,3,4,5,7,8,9,11,12count= 1
while count <= 10:if count == 6 or count == 10:pass
else:print(count)
count+= 1c.使用while循环输出10-5,从大到小,如10,9,8…,到5时再从0循环输出到5然后结束
count= 10
while count >= 5:print(count)
count-= 1
if count == 4:
count1=0while count1 <= 5:print(count1)
count1+= 1d.使用while循环实现输出1-100内的所有奇数
e.使用while循环实现输出1-100内的所有偶数
count= 10
while count <= 10:if count % 2 !=0:print(count)
count+= 1