一、控制语句-if
语句格式:
基本执行格式:
if 判断条件:
执行语句
ifse 判断条件:
else: 执行语句
示例1:使用if判断输入是否成年
age = input("please input age :") #判断字符串是否为空 if age.strip(): #判断是否为数字 if age.isdigit(): if int(age) >= 18: print("成年人") else: print("未成年") else: print("输入的不是数字!") else: print("输入的只有空格")
示例2:判断一个数的类型
number= input("please input number :") #判断大于零为正数 if int(number) > 0 : print("{0} 是正数!".format(number)) #判断小于零为附数 elif int(number) < 0: print("{0} 是负数!".format(number)) #否则就是输入的是0 else: print("{0} = 0".format(number))
二、while循环
语句格式:
while 判断条件:
行语句(如果判条件为true则为死循环)……
示例:
#判断条件a小于1 while a >= 1: print(a) #每次循环a-1 a-=1
判断条件true和1谁的效率高:1的效率高 因为 true最终也会解析为 1 、0
continue语句:跳出此次循环,继续下一次循环。
brek语句:退出循环
示例:在刚才判断年龄和基础上加入while死循环和continue、brek语句,使程序只能输入正确否则一直输入
while 1: age = input("please inpt age:") if age.strip(): # 判断是否为数字 if age.isdigit(): if int(age) >= 18: print("成年人") # 输入正确,退出循环 break else: print("未成年") # 输入正确,退出循环 break else: print("输入的不是数字!") # 输入错误继续 continue else: print("输入的只有空格") # 输入错误继续 continue
三、for循环
语法:
for item in sequence(可迭代列表):
执行语句
示例:
a='123' for x in a: print (x)
输出结果:1 2 3
使用for循环打印99乘法表:
for i in range(1, 10): for j in range(1, i+1): print(" {0} x {1} = {2} ".format(j,i,j*i),end="") if i == j: print()
四、练习题
(1)输入一串字符,统计其中字母、数字、空格
str = input("input string:") #统计数字 number = [] #统计空格 space = 0 #统计字母 zm = [] #其它字符 qt = [] for i in str: if i.isdigit(): number.append(i) elif i.isspace(): space +=1 elif i.isalpha(): zm.append(i) else: qt.append(i) print("数字共出现了{0}次,它们分别是{1}".format(len(number),"、".join(number))) print("字母共出现了{0}次,它们分别是{1}".format(len(zm),"、".join(zm))) print("空格共出现了{0}次".format(space)) print("其它字符共出现了{0}次,它们分别是{1}".format(len(qt),"、".join(qt)))