四、初识python编程-程序结构(课时11-13)

程序结构

一、分支结构

  • 1.分支结构的基本语法:
    if 条件表达式:
       语句块1
       语句块2
       语句块3
       ……
    注意有个条件表达式后面有个:号,条件表达式必须为为布尔值的表达式,表达式为真执行后面语句块
    注意缩进,必须是同一缩进才是同一语句块
# if案例
a = "我每天都锻炼"
if a: #只要字符串内有内容就为真。只有空字符串为假,就是"",里面什么都没有。但是"    "为真,这是包含空字符。
    print("我就会瘦的跟闪电一样") #如果a为真,就会输出下列语句块。
    print("我就会跟黄俊华一样强壮")
print("你就想吧") #跟if语句平级,无论真不真都会输出。
  • 2.双向分支:
    if 条件表达式:
       语句块1
       语句块2
       语句块3
       ……
    else:
       语句块1
       语句块2
       语句块3
       ……
    为真就执行if后面的语句表达快,为假就执行else后面的语句块,只有二选一执行
# 双向分支案例
a = "我每天都锻炼"
if a: 
    print("我就会瘦的跟闪电一样") 
    print("我就会跟黄俊华一样强壮")
else:
    print("那还有什么办法呢")
    print("只能继续当一个快乐肥宅啦")
print("你就想吧") 
  • 3.input:
    input负责接受用户输入并把内容返回给变量。返回的内容一定是字符串
# input案例
gender = input("请输入你的性别") #程序执行后,下方会出现一个空格让用户输入,且现实“请输出你的性别”
if gender == "man": #判断gender这个变量是否等于"man",如果是就执行下列语句块
                 print("我就带你去网吧")
else: #不是就执行下列语句块
                 print("对不起,我们不约")

input返回的是字符串,必要时可以用到向下取整函数int来将字符串转化为整数。

# input案例2
# 考试成绩判断
# 90以上: 输出优秀
# 80-90:良
# 70-80:中
# 60-70:平
# 60以下: 输出:我没你这撒学僧

grades = int(input("请输入你的成绩")) #使用 int 对一个字符类型的数据进行强制类型转换时,要求输入的字符类型只能为整数,不能为浮点数。
if grades >= 90:
    print("优")
if grades >= 80 and grades < 90:
    print("良")
if grades >= 70 and grades < 80:
    print("中")
if grades >= 60 and grades < 70:
    print("差")
if grades < 60:
    print("我没你这撒学僧")

4.多路分支
if 条件表达式:
   语句块
elif:
   语句块
elif:
   语句块
n个elif
else:
   语句块
elif为else if,即否则如果

# 多路分支案例
grades = int(input("请输出你的成绩"))
if grades >= 90:
    print("A")
elif grades >= 80:
    print("B")
elif grades >= 70:
    print("C")
elif grades >= 60:
    print("D")
elif grades < 60:
    print("撒学僧")

二、循环结构

1.for循环

  • 基本语法
    for 变量 in 序列:   (这里的意思对于序列里的每个内容,挨着挨着来)
       语句块
list = [1,2,3]
for shuzi in list: #对面序列中的每一个数字1,2,3
          print(shuzi) #都打印出他自己
          print(shuzi+10) #都打印出他自己加10
# 结果就为1,11,2,12,3,13

list = ["黄俊华","李彧"]
for name in list:
          if name == "李彧":
               print("帅哥")
          else:
               print("麻瓜")
#结果为麻瓜。帅哥
  • for…else…:
    for 变量 in 序列:
       语句块
    else:    (与for同级,即同缩进)
       语句块
list = ["黄俊华""李彧""陈俊宇"]
for name in list:    '''list中的每一个内容通过下面if语句,如果内容为"李彧",
                        结果就为帅哥,其他的内容就为"不太行".最后在序列中的内
                        容都循环完了过后,输出"就是这么忙自信"'''
          if name == "李彧""
               print("帅哥")
          else:
               print("不太行")
else:
    print("就是这么自信")
#结果为不太行,帅哥,不太行,就是这么自信

2.循环中的一些补充(无论哪种循环都可以用)

  • break:无条件停止循环
list = [666,777,111,8949,8498498498,777]
for shuzi in list:
       if shuzi == 777:
             print("seven的意志")
             break '''确定序列中是否包含777,包含的话找到一个即可,就不需要继
                      续循环下去了。注意这里与上面的print是同缩进的'''    
       else:
             print("不太行啊,小老弟")
#结果为不太行啊,小老弟;seven的意志  找到了777过后有break就无条件结束了循环。
  • continue:立即结束本轮循环,进入下一次循环,后面是什么就不管了。
list = [1,2,3,4]
for a in list:
    if a % 2 == 1:  #如果为奇数,直接到下一轮循环。时偶数就继续执行。
        continue
    else:           
        print(a)
        print("哈哈,被你找到了")
'''结果为
2
哈哈,被你找到了
4
哈哈,被你找到了
'''
  • pass:只是一个占位符,没有跳过的意思。
  • range函数: range(x,y)
    生成一个有序的定制数列。
    其数列左包括,右不包括。python中连个表示数字范围的一般就是左包括,右不包括,除了randint。

3.while循环: 表示当条件成立时就成立,适用于不知道循环多少次,但知道循环的条件的情况。
基本语法:
while 条件表达式:
   语句块
或者是
while 条件表达式:
   语句块
else:
   语句块

#年利率是1%,本金为100000,复利算法算法。几年后本金翻倍?
base = 100000
year = 0
while base < 200000:
           base = base * (1+0.01)
           year += 1
else:
           print(year)

三、顺序结构

按照顺序一步一步地来

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值