Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。
可以通过下图来简单了解条件执行过程:
#if语句的语法是 if [判断条件]: <执行语句> #例如 if 1 < 2: print('right') #也可以执行多个语句 if 1 < 2: print('right') print('clever') #else语句是结合if或者elif并用的,语法格式如下 if [判断条件]: <执行语句> else: < 执行语句 > #例如 if 1 > 2: print('right') else: print('no') #elif是与if结合使用的,不能单独直接使用,例如 if [判断条件]: <执行语句> elif [判断条件]: < 执行语句 > else: < 执行语句 > #例如 if 1 > 2: print('right') elif 3 > 2: print('right') else: print('no')
if 1 < 2: print('1小于2') if 2 > 3: print('2大于3') elif 2 < 3: print('2小于3') else: print('奥利给') elif 1 > 2: print('1大于2') else: print('啥也不是')
#and a = 1 b = 2 if a > 0 and b > a: print(a+b) #打印结果将输出3,只要其中一个条件不满,则不会执行语句块的代码 #or if a < 0 or b > a: print(a+b) #打印结果将输出3,只要有其中任一个条件满足,则执行语句代码块 #not if not a: print(a+b) #这里不会输出任何东西,因为a是大于0,为真,只有条件为假,才会执行代码快语句
while循环需要一个定义一个结束条件。
#while语法 while 判断条件(condition): 执行语句(statements) # 例如,当为真,则打印yes,是个无限循环语句 while True: print('yes') #通过添加适当的判断语句来结束这个语句执行 #定义一个变量,标记 flag = True while flag: print('yes') if flag: flag=False # 把flag值改为false,这样条件就不满足,就不会循环执行 print('over') #也可以通过break,或continue关键字去控制语句的输出,如下 #continue用法 i = 1 while i < 10: i += 1 #每一次循环,都在count基础上加1 if i % 2 != 0: # 非双数时跳过输出 continue print(i) # 输出双数2、4、6、8、10 #break用法 i = 1 while 1: # 循环条件为1必定成立 print(i) # 输出1~10 i += 1 if i > 10: # 当i大于10时跳出循环 break
for循环是可以预知循环次数的,不需要人为中断,也能自己结束。for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。
#for循环的一般格式如下: for <variable> in <sequence>: <statements> else: <statements> #实例 languages = ["C", "C++", "java", "Python"] for x in languages: print (x) #使用break 语句用于跳出当前循环体: languages = ['C','C++','Python','java','Perl'] for x in languages: print('当前循环到',x) if x == 'Python': print (x,'是最好的开发语言') break else: print('没有循环对象!') print('循环完成!')
Python 语言允许在一个循环体里面嵌入另一个循环。也可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,你可以在for循环中嵌入while循环。
Python for 循环嵌套语法: for iterating_var in sequence: for iterating_var in sequence: statements(s) statements(s) Python while 循环嵌套语法: while expression: while expression: statement(s) statement(s) # 实例、99乘法表 for a in range(1,10): for b in range(1,a+1): print('{}*{}={}\t'.format(b,a,a*b),end='') print() #补充:end=‘’ 指定end参数的值,可以取消在末尾输出回车符,实现不换行。
1、使用while循环 1 2 3 4 5 6 8 9 10
2、输出100 以内所有奇数
3、输出100 以内所有偶数
4、求1-2+3-4+5...99所有数的和
5、用户登录 (三次机会重试
6、1-100所有数的和 附:参考答案,点击下方小"+"查看
#练习题 #1.使用while循环 1 2 3 4 5 6 8 9 10 # test_num = 1 # while test_num <= 10: # if test_num == 7: # pass # else: # print(test_num) # test_num+=1 #2.输出100 以内所有奇数 # test_num = 1 # while test_num <= 100: # n = test_num % 2 # if n == 0: # pass # else: # print(test_num) # test_num+=1 #3.输出100 以内所有偶数 # test_num = 1 # while test_num <= 100: # n = test_num % 2 # if n == 0: # print(test_num) # else: # pass # test_num+=1 #4.求1-2+3-4+5...99所有数的和 # num1 = 0 # num2 = 1 # while num2 <= 99: # num3 = num2 % 2 # if num3 == 0: # num1 = num1 - num2 # else: # num1 = num1 + num2 # num2+=1 # print(num1) #5.用户登录 (三次机会重试 # User_name = 'root' # User_password = '123' # flag = 1 #定义一个退出标志 # print('请使用root账户登录!') # while flag == 1: #flag等于1的时候无限循环 # User_id=input('请输入用户名:') # if User_id == User_name: # for item in range(0,3): #循环输入密码三次 # User_pwd = input('请输入密码:') # if User_pwd == User_password: # print('登录成功!') # flag +=1 #登录成功后让flag 不等于1 退出while循环 # break #退出for循环 # else: # print('密码错误,请重新输入密码!') # else: # print('请使用root账户登录!') #6.1-100所有数的和 # num1 = 0 # num2 = 1 # while num2 <= 100: # num1 = num1 + num2 # num2+=1 # print(num1)View Code