Python循环

流程控制语句:

分类

1.顺序结构
2.判断结构解析,如果……否则……
3.循环结构

判断结构

格式一

① if 条件表达式
② 语句块

如果条件表达式的结果为True,那么就会立即进入到if的内部去执行语句块,
等到语句块执行完毕了,就可以认为if结构结束了,但是程序一定会去执行;

如果条件表达式的结果为False,那么就会不会进入到if的内部去执行语句块,
也就意味着if结构已经结束了,但是程序一定会去执行

#需求:从键盘读入一个正整数,判断其奇偶性
num = int(input('请输入一个正整数:'))
if num % 2 == 0:
    print('是偶数...')
if num % 2 == 1:
    print('是奇数...')
print('程序结束了...')

格式二

① if 条件表达式:
② 语句块1
③ else:
④ 语句块2

执行流程:
计算机会先执行①,遇到了if关键字会先执行条件表达式,
如果条件表达式的结果为True,那么就会立即进入到if的内部去执行语句块②,
等到语句块②执行完毕了,整个if...else结构就结束了,但是程序一定会去执行③
如果条件表达式的结果为False,那么就会立即进入到else的内部去执行语句块④,
等到语句块④执行完毕了,整个if...else结构就结束了,但是程序一定会执行

age = eval(input("请输入你的年龄: "))
if age >= 18:
    print("你已经成年了。。。")
else:
    print("回家写作业去吧。。。")
print("小弟弟,出来混迟早要还的……")
#使用判断结构if...else重构之前三元中的案例:两个数中的较大值
num1 = 10
num2 = 20
if num1 > num2:
 print('较大值为:{}'.format(num1))
else:
 print('较大值为:{}'.format(num2))

练习:

需求:

模拟一个购物系统,通过键盘输入:单价,数量,付款金额;
最后计算得到应收金额和找零;
单价:price
数量:amount
支付金额:money
总金额:totalPrice
找零:change
附加需求:
满500元打8折

price = eval(input("请输入商品的价格: "))
amount = eval(input("请输入商品的数量: "))
totalPrice = price * amount      #计算总消费金额
print("您应该消费了%s钱"%totalPrice)
money = eval(input("请输入付款金额: "))

if money < totalPrice:
    chajia = totalPrice - money
    print("总金额不足,差%s钱,请继续加款。。。"%chajia)
else:
    change = money - totalPrice
    print("应找您{}钱".format(change))
    if totalPrice >= 500:
        print("恭喜您获得八折优惠!!!")
        totalPrice2 = totalPrice * 0.8
        good = float(totalPrice -totalPrice2)
        print("您优惠的总金额为,",totalPrice2,"钱,优惠了",good,"元")

格式三:

if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
elif 条件表达式3:
语句块3
elif 条件表达式y:
语句块y
else:
语句块z

执行流程:

计算机一定会先执行开始语句,遇到了if关键字执行条件表达式1,如果条件表达式1的结果为True,那么就进入if内部执行语句块1,执行结束后,整个if elif else结构结束了,但是程序一定会执行else。如果条件表达式1的结果为False,那么执行elif后面的条件表达式2,如果条件表达式2的结果为True,那么就进入elif内部执行语句块2,执行结束后,整个if elif else结构结束了,但是程序一定会执行else。如果所有的条件表达式的结果都为False,最终会执行else中的语句块z,执行结束后,程序一定会执行else

age = 30
if age < 0 or age > 130:
    print('你可能不是人...')
elif age <= 20:
    print('伦家还很小的啦!么么哒...')
else:
    print('别追我了,我已经有两个娃了...')

需求:

从键盘输入小明的期末考试成绩
当成绩为100分时,奖励一辆BMW;
当成绩为(80,99]时,奖励一台8848;
当成绩为[60,80]时,奖励一本从入门到精通只需33天;
其它时,暴打一顿!

注意事项:

如果多个elif后面的条件表达式是互斥关系,那么谁上谁下无所谓
如果多个elif后面的条件表达式是包含关系,那么范围小的要在范围大的上面议:

score = int(input('请输入小明的考试成绩:(分)'))
if score < 0 or score > 100:
    print('输入的成绩有误!请重新输入...')
else:
    if score == 100:
        print('奖励一辆BMW')
    elif score > 80:
        print('奖励一台8848')
    elif score >= 60:
        print('奖励一本参考书')
    else:
        print('老子要揍你了!!555555~~~~')

while循环:

有四要素组成:

①.初始化条件(执行一次)一个起始数据/起点,一般使用变量来进行存储
②.循环条件(可能执行多次)循环合适结束全靠它,执行结果为True,那么循环继续,反之,循环就终止了

补充:需要和初始化条件配合

③.迭代条件(可能执行多次)用来改变初始化条件中的数据,只有变化了,才有终止的那一刻
④.循环体(可能执行多次)需要重复执行的逻辑代码
格式:

while ②:



执行流程:① -> ② -> ④ -> ③ -> ② -> ④ -> ③ -> ② -> ⑤

案例1:

演示while循环的使用
需求:打印10次德玛西亚。。。

 i = 0
while i < 10:
    i +=1
    print("德玛西亚。。。")

案例2

需求:打印1~100之间的偶数,并且得到偶数的个数和总和
有计数和累加的思想 --> 可以定义变量来接受

count = 0  # count的作用是为了记录偶数的个数
sum1 = 0  # sum1的作用是为了记录偶数的总和
i = 1
while i < 101:
 if i % 2 == 0:
     print(i)
 count += 1
 sum1 += i
 i += 1
print('1~100之间偶数的个数为:%d' % count)
print('1~100之间偶数的总和为:%d' % sum1)

案例3:

需求:
打印1~150,
如果是3的倍数追加'foo',
如果是5的倍数追加'biz',
如果是7的倍数追加'baz'
效果如下:
1
2
3 foo
4
5 biz
6
7 baz
15 foo biz
105 foo biz baz
150 foo biz

i = 1
while i <= 150:
    print(i, end="")
    if i % 3 == 0:
        print(" foo", end="")
    if i % 5 == 0:
        print(" biz", end="")
    if i % 7 == 0:
        print(" baz", end="")
    # 以下的print()的作用仅仅是为了换行
    print()
    i += 1

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,185评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,445评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,684评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,564评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,681评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,874评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,025评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,761评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,217评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,545评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,694评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,351评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,988评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,778评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,007评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,427评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,580评论 2 349

推荐阅读更多精彩内容

  • 一、复习 1、字符串2、r/R在字符串的最前面阻止转义3.获取单个字符: 字符串[下标]下标:0 ~ 长度-1 ;...
    Sakura_flower阅读 452评论 0 3
  • IF语句 IF结构if 条件语句:条件语句结果为True执行的代码块 执行过程:先判断条件语句是否为True,如果...
    慢节拍_2709阅读 344评论 0 4
  • 一、if语句补充 1.if-elif-...else if 条件语句1:代码块1elif 条件语句2代码块2els...
    七夜_174e阅读 501评论 0 6
  • Day4-循环和分之 一.数据类型转换(int,float,bool,str) 1.数据类型的自动转换 2.强制转...
    mmlong_07阅读 267评论 0 0
  • 在一次看跑男节目的时候,记住他们这样一句话:清早起床,拥抱太阳,满满正能量,耶耶耶。当时能够想象那种场景:...
    用心大胆的去爱阅读 166评论 0 0