02循环

"""
程序运行方式:判断语句
1.if  条件表达式:  # 条件成立时(true)时
满足条件事件1
满足条件事件2
...
2.if条件表达式1  or/and 条件表达式2...:   # 多个条件判断
满足条件时的语句1
满足条件时的语句2
...
3.if--else  条件成立时执行一些代码,条件不成立时执行另一些代码
if  条件表达式:
代码块1   # 条件成立时
else:
代码块2   # 条件不成立时
"""
# score_01 = 90
# if score_01 >= 80:  # 判断语句,表达式为True时才会执行以下语句
#     print("您的成绩符合升班条件,可以升班")
#     print("您的考试成绩为:",score_01)
#     print("再接再厉")
#     print("程序结束了")  # 跳出if,不受if判断的影响

# a = bool(60 >= 80)  # bool()函数转换
# print(a)

# if用于判断多重条件时,and  or
# month = 8
# date = 15
# if month == 8 and date == 15:   # 条件成立时执行的
#     print("今天是中秋节")
#     print("记得吃月饼啊")
#     print("还要赏月呀")
# else:  # 条件不成立时执行的
#     print("今天不是中秋节")

# print("不管是不是中秋节,都要吃饭")

# time = 14.38
# type_1 = 1
# if time == 14.45 or type_1 == 1:
#     print("下课时间到了,或者有紧急情况需要处理,暂时离开教室")
# else:
#     print("还没下课,敲代码,好好学习吧")


# 用户登录,用户名,密码都正确,才能登陆
# user_name = "admin"
# pass_word = "123"
# user = input("请输入用户名")
# word = input("请输入密码")
# if user == user_name and word == pass_word:
#     print("用户名,密码正确,登陆成功。")
# else:
#     print("用户名或者密码不正确,不能登录。")

# ticket = 1  # 用1代表有车票,0代表没有车票
# if ticket == 1:
#     print("有车票,可以预定")
#     print("终于可以回家了,开心")
# else:
#     print("没有车票,不能购买")
#     print("不能回家,难过")

# rain = 0  # 下雨为1,不下雨为0
# sun = 1  # 紫外线强为1,紫外线弱为0
# if (rain == 1) or (sun == 1):  # 两个表达式只要有一个符合,一个为真,就成立 括号可加可不加
#     print("今天出门需要打伞")
# else:
#     print("天气不错,不用带伞")
# from inspect import k

"""
if...elif...elif...elif
星期一到星期日需要做的事情
"""
# print("程序开始执行")
# weekday = input("请输入今天星期几")
# if weekday == "星期一":
#     print("升国旗")
#     print("第一周的开始,努力学习")
# elif weekday == "星期二":
#     print("全天有课,还要上晚自习")
# elif weekday == "星期三":
#     print("只上半天课,下午操场活动")
# elif weekday == "星期四":
#     print("全天有课,还要上晚自习,但是明天就周五了")
# elif weekday == "星期五":
#     print("今天周五了,不用上晚自习,啦啦啦")
# elif weekday == "星期六":
#     print("今天周六了,在宿舍睡一天吧")
# elif weekday == "星期日":
#     print("今天周日了,只能睡多半天,因为还要上晚自习")
# # 如果输入了别的,应该怎么处理呢
# else:
#     print("输入错误")
# print("程序执行结束")

# 判断学生的成绩等级
# score = int(input("请输入学生的考试成绩:"))
# if score >= 90 and score < 100:
#     print("成绩评定为A级")
# elif 80 <= score < 90:
#     print("成绩评定为B级")
# elif score >= 70 and score < 80:
#     print("成绩评定为C级")
# elif score >= 60 and score< 70:
#     print ("成绩评定为D级")
# else:
#     print("成绩没有及格,加油吧少年")

"""
if...else嵌套,可以嵌套多层
"""
# # 后买火车票并且通过安检,才能顺利回家
# ticket = 1  # ticket为1代表有票,为0代表没有票
# knife_length = 4
# if ticket == 1:
#     print("抢到车票了,好开心")
#     if knife_length < 10:
#         print("顺利通过安检,可以上火车")
#         print("终于可以回家了")
#     else:
#         print("没有通过安检,不能把礼物送给爸妈")
#         print("等待警察叔叔处理")
# else:
#     print("没有抢到车票,不能回家")
#     car_ticket = input("请输入汽车票信息:0代表没票,1代表有票:")
#     if car_ticket == "1":  # input("...)   "..."  intinput("")数字多少。。
#         print("买到了汽车票,可以回家,不容易呀")
#     else:
#         print("汽车票也卖完了,我太难了...")

# if 缩进
# age = 4
# if age > 0
#     print("小宝宝,开心玩吧")
#     if age >= 6:
#         print("该上小学了,好好学习呀")
#     else:
#         print("还没到上小学的年龄")

# if-elif-else 语句
# print("程序开始")
# age = 1.9
# if age >= 7:
#     print("您的年龄符合上学要求,可以入学")
# elif age >= 3:
#     print("您的年龄符合上幼儿园要求,可以入学")
# elif age >= 2:
#     print("您的年龄符合上托儿所的要求")
# else:
#     print("您的年龄太小了,在家里玩耍吧")
#     print("程序结束")

# if条件判断表达式
# age = 19
# is_grow = False
# if age >= 18:
#     print("已成年")
#     is_grow = True
#     if is_grow == True:
#         print("可以进入网吧")
# else:
#     print("未成年,不可以进网吧")

# age = 19
# is_grow = True if age >= 18 else False  # if条件表达式
# print("已成年,可以进入网吧") if is_grow else print("未成年,不能进入网吧")

# while 循环
# 输出五行正三角形的星星
# 两层循环,外层循环行数,内层循环星星
# i = 1
# while i < 6:
#     j = 0
#     while j < i:
#         print("*", end='')
#         j += 1
#     print("")
#     i += 1
#
# # 输出倒三角星星
# i = 5
# while i > 0:
#     j = 0
#     while j < i:
#         print("*", end="")
#         j += 1
#     print("")
#     i -= 1

# 循环嵌套
# 九九乘法表
# %d 字符串中的占位符,代表此处有一个十进制的整数
# print("...", end="")中的  end="" 代表语句结束不换行,print()默认换行
# print("")  代表什么都不输出,只换行
# i = 1
# while i <= 9:
#     j = 1
#     while j <= i:
#         print(" %d * %d = %d" % (i, j,  i * j), end="")
#         j += 1
#     print("")
#     i += 1

"""
for  循环
for  临时变量  in  可迭代对象(字符串,列表,元祖,字典):
     代码块1
range(a,b) #  生成大于等于a,小于b的数字序列
"""
# for 迭代字符串
# for temp in "北京":
#     print(temp, end="")
# print("")
#
# for迭代列表
# for temp in {1, 2, 3, 4}:
#     print(temp)

# 1-10之间整数的和
# i = 1
# sum_01 = 0
# while i <= 10:
#     print(i)
#     sum_01 += i
#     i += 1
# print(sum_01)
# for循环
# sum_02 = 0
# for temp in range(1, 11):
#     print(temp)
#     sum_02 += temp
# print(sum_02)
# 九九乘法表
# i = 0
# for i in range(1, 10):
#     for j in range(1, i + 1):
#         print(" %d * %d = %d" % (i, j, i * j), end="")
#     print(i)

# for i in range(1, 10):
#     for j in range(1, i+1):
#         print("%d * %d = %d" % (i, j, i * j), end="")
#     print("")

# break 跳出结束当前循环,并结束循环
# continue 跳出本次循环,继续执行下一次循环
# words = "python"
# for temp in words:
#     print("------")
#     if temp == "o":
#         break  # 跳出,结束当前循环
#         continue  # 跳出结束本次循环,继续执行下次循环
#     print(temp)

# range(start,end,step)  生成一个数字序列n.    start<=n<end
# start如果缺省,默认为0
# step步长,如果缺省,默认为1
# range(5)  从0开始,每次+1,一直到4,   0--1--2--3--4
# for i in range(10,2,-1_):  # 从10开始,到2+1结束,每次-1
#     print(i)
# range(1, 10, 2)  # 步长为2.  1--3--5--7--9.

# for temp in range(5):
#     temp += 1  # temp 0, +1,1;  1,+1,2;  2,+1,3
#     if temp == 3:
#         # break  # 结束整个循环
#         continue
#     print(temp)

# for循环实现:
# 输出1-10之间的整数,除了6之外。continue
# for i in range(1, 11):
#     if i == 6:
#         continue
#     print(i)
# 猜数字,最多猜10次,如果用户猜对了,就结束循环
# guess = -1
# number_01 = 50
# for i in range(10):
#     guess = int(input("请输入你猜的数字:"))
#     if guess == number_01:
#         print("恭喜你,猜对了")
#         break
#     elif guess > number_01:
#         print("你猜的数字大了,请重新输入")
#         print("你还剩 %d 次机会" % (9-i))
#     elif guess < number_01:
#         print("你猜的数字小了,请重新输入")
#         print("你还剩 %d 次机会" % (9-i))

# 简述break和continue语句的区别是什么?
# 都用于循环中
# break跳出,结束当前循环
# continue跳出结束本次循环,继续执行下次循环

# 编写程序,实现用户登录,用户名、密码只能输错三次。用户名、密码正确才能登录。
# name = "12"
# key = "12345"  # 字符串需要加""
# for c in range(3):
#     b = input("请输入你得用户名")
#     d = input("请输入你的密码")
#     if b == name and d == key:
#         print("输入正确正在加载")
#         break
#     elif b != name or d != key:
#         print("用户名或密码输入错误")
#         print("你还有 %d 次机会" % (2-c))
#     else:
#         print("输入错误已锁定")

'''
x = True
y = False
z = False
if x or y and z:  # 优先级别:no--and--or
    print("yes")
else:
    print("no")

7.编写程序,成绩划分为“优良可差”四档;判断某一成绩,属于哪一档,并输出结果;
'''
# score_01 = int(input("请输入学生成绩"))
# if score_01 >= 90:
#     print("优")
# elif score_01 >= 80:
#     print("良")
# elif score_01 >= 70:
#     print("可")
# elif score_01 >= 60:
#     print("差")

"""
编写程序,实现用户登录,用户名,密码只能输错三次。
用户名,密码正确才能登陆。
"""
# user = "abc"
# password = "123"
# for i in range(3):  # i的取值为:0,1,2,
#     user_name = input("请输入用户名:")
#     pass_word = input("请输入密码:")
#     if user_name == user and pass_word == password:
#         print("用户密码正确,登陆成功")
#         break
#     else:
#         print("用户名或密码错误,请重新输入,你还有%d次机会!" % (2 - i))

# user = "abc"
# password = "123"
# i = 1
# flag = 0  # 标志,跳出内层循环时,记录状态
# while i <= 3:
#     user_name = input("请输入用户名")
#     if user_name == user:  # 用户名正确
#         for j in range(3):  # 0,1,2
#             pass_word = input("请输入密码")
#             if pass_word == password:
#                 print("登陆成功")
#                 flag = 1
#                 break  # 跳出for循环,并结束内层程序
#             else:
#                 print("密码输入错误,请重新输入,你还有%d次机会" % (2 - j))
#         else:  # 与for循环联用,当循环执行完后做的事
#             print("密码输错三次,请重新输入用户名")
#             continue
#         if flag == 1:
#             break  # 跳出while循环并结束程序
#     else:
#         print("用户名错误,请重新输入,你还有%d次机会" % (3 - i))
#         i += 1
# else:
#     print("用户名已输错三次,明日再来")

'''
else语句可以和循环语句结合使用,
并且else语句只在循环完成后执行。
如果循环遇到break(意外结束,而不是正常结束)else就不会执行
'''
# count = 0
# while count < 5:
#     print(count,"is less than 5")
#     count += 1
#     if count == 3:  # 当count等于3 时,使用break结束循环
#         break   # /continue
# else:  # 当while循环正常结束时,才会被执行。while循环遇到break结束,此处的else不会执行、
#     print(count, "is not less than 5")

'''
pass 空语句,他是为了保持程序结构完整性
不作任何事情,用作占位
'''
# i = 0
# if i > 10:
#     pass  # 占位,如果没有他,就不符合语法规范,解释器会报错
# else:
#     print("i小于10")

# num = 111
# pw = 222
# for i in range(3):
#     a = int(input("请输入账号:"))
#     b = int(input("请输入密码:"))
#     if a == num and b != pw:
#         print("账号正确,密码错误!")
#         print("您还有 %d 次的机会。" % (2 - i))
#     elif a != num and b == pw:
#         print("账号错误,密码正确!")
#         print("您还有 %d 次的机会。" % (2 - i))
#     elif a != num and b != pw:
#         print("账号错误,密码错误!")
#         print("您还有 %d 次的机会。" % (2 - i))
#     else:
#         print("输入正确。")
#         break

# 编写程序,打印出所有的“水仙花数” 。所谓水仙花就是指一个三位数,其各个位上的数字的立方之和正好等于该数字本身。
# 参考答案:
# for i in range(100, 1000):
#     a = int(i / 100)  # 取出三位数的百位
#     b = int(i / 10) % 10  # 取出三位数的十位
#     c = i % 10  # 取出三位数的个数
#     if i == a ** 3 + b ** 3 + c ** 3:
#         print(i)
#
# for i in range(100, 1000):
#     b = i // 100
#     s = i // 10 % 10
#     g = i % 10
#     if b ** 3 + s ** 3 + g ** 3 == i:
#         print(i)

# x = 10
# y = 20
# z = 30
# if x < y:
#     z = x
#     x = y
#     y = z
# print(x, y, z)

 

posted @ 2020-03-23 15:56  吹散思绪  阅读(171)  评论(0编辑  收藏  举报