python程序中的组织结构

目录​​​​​​​

顺序结构

        对象的布尔值:

选择结构

        单分支结构

        双分支结构

         多分支结构

         嵌套if

 条件表达式

pass语句

range()函数

循环结构

        while循环语法结构:

         for-in循环

        break语句

        continue语句

        else语句

        嵌套循环


顺序结构

        程序从上到下顺序的执行代码,中间没有任何的判断和跳转,直到程序结束

"------把大象装冰箱------"
print('-----程序开始------')
print('1.打开冰箱')
print('2.放入大象')
print('3.关闭冰箱')
print('----程序结束------')

        对象的布尔值:

                        python中一切皆对象,所有的对象都有一个布尔值,获取对象的布尔值使用内置函数bool()

                以下对象的布尔值为Flase

                 Flase,0,None,空字符串,空列表,空元组,空字典,空集合除这些外,其它对象的布尔值均为True     

print(bool(False))
print(bool(0))
print(bool(None))
print(bool(''))  # 空字符串
print(bool([]))  # 空列表
print(bool(list()))  # 空列表
print(bool())  # 空元组
print(bool(tuple()))  # 空元组
print(bool({}))  # 空字典
print(bool(dict()))  # 空字典
print(bool(set()))  # 空集合

选择结构

        程序根据判断条件的布尔值选择性的执行部分代码

        单分支结构

                语法结构:

money = 1000
a = int(input('请输入取款金额'))
if a <= 1000:
    money -= a
    print('取款成功!您现在的余额为:', money)

        双分支结构

"录入一个整数,判断这个数是奇数还是偶数"
a = int(input('请输入一个整数'))
if a % 2 == 0:  #     这里也可以考虑用布尔值作为判断条件
    print(a, '是偶数')
else:
    print(a, '为奇数')

         多分支结构

        

"------录入你的成绩,90-100为A,80-89为B,70-79为C,60-69为D,0-59为E,其余为非有效成绩"
a = int(input('请输出您的成绩'))
if 90 <= a <= 100:
    print('您的成绩为A')
elif 89 >= a >= 80:
    print('您的成绩为B')
elif 70 <= a <= 79:
    print('您的成绩为C')
elif 60 <= a <= 69:
    print('您的成绩为D')
elif 0 <= a <= 60:
    print('您的成绩为E')
elif a < 0 or a > 100:
    print('您输入的成绩不在范围内')

         嵌套if

"""
----会员大于200打八折,大于100打九折,否则不打折----
---非会员大于200打9.5折,否则不打折-----
"""
a = input('您是否是会员?')
m = int(input('请输入您的消费金额'))
if a == '是':
    if m >= 200:
        m *= 0.8
        print('您打折后的金额为', m)
    elif 200 > m >= 100:
        m *= 0.9
        print('您打折后的金额为', m)
    else:
        print('您的付款金额为', m)
elif a == '否':
    if m >= 200:
        m *= 0.95
        print("您打折后的金额为", m)

    else:
        print('您的付款金额为', m)

        

 条件表达式

# ----从键盘录入两个整数,比较这两个整数的大小----
a = int(input('请输入一个整数'))
b = int(input('请输入另外一个整数'))
if a > b:
    print(str(a)+'>'+str(b))
elif a == b:
    print(str(a)+'='+str(b))
else:
    print(str(a)+'<'+str(b))
# ---------使用条件表达式输出----------------
c = int(input('请输入一个整数'))
d = int(input('请输入另外一个整数'))
print(str(c)+'>='+str(d) if c >= d else str(c)+'<'+str(d))
# 条件True的结果 if 条件 else 条件False的结果

pass语句

语句什么都不做,只是一个占位符,用在语法上需要语句的地方

range()函数

        用于生成一个整数序列

       优点:不管range对象表示的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅仅需要存储start,stop以及step,只有当用到range对象时,才会去计算序列中的相关元素

判断指定整数是否在range()序列中,可以用in 或者 not in 判断

r = range(10)  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(r))
a = range(1, 10)   # [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(a))
b = range(2, 8, 2)
print(list(b))  # [2, 4, 6]
'判断整数是否在序列中存在,采用的是in 或者 not in'
print(10 in r)  # False
print(4 not in b)  # False
print(9 in a)  # True

循环结构

         循环的分类:主要有 while循环和for -in循环

         选择结构if与循环结构while的区别:if是判断一次,条件为True,执行一次。而while是判断N+1次,条件为True执行N次。

        while循环语法结构:

"-----计算[1,100]之间的偶数和以及奇数和-----"
i = 1
s1 = 0
s2 = 0
while i <= 100:
    if not bool(i % 2):
        s1 += i
        i += 1
    else:
        s2 += i
        i += 1
print('1到100之间偶数和为', s1)
print('1到100之间奇数和为', s2)

         for-in循环

                in表示从(字符串,列表等)中,依次取值,又称遍历

                语法结构

 循环体内不需要访问自定义变量,可以将自定义变量改为下划线代替

"""从字符串中依次将取出"""
for i in "hello world!":
    print(i)
"将整数元素依次从range()函数中取出"
for n in range(0, 10, 2):
    print(n)
for _ in range(3):
    print('人生苦短,我用python')
"使用for—in循环,计算1-100的偶数和"
s1 = 0
s2 = 0
for i in range(1, 101):
    if i % 2:
        s1 += i
    else:
        s2 += i
print('1到100之间的奇数和为', s1)
print('1到100之间的偶数和为', s2)
"""
输出100到999之间的水仙花数
例如:153=3**3+5**3+1**3
"""
for i in range(100, 1000, 1):
    if i == (i % 10)**3+((i//10) % 10)**3+(i//100)**3:
        print("输出100到999之间的水仙花数为", i)

        break语句

        用于结束循环结构,通常与分支结构if一起使用,break用于跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环

"""
从键盘录入密码,如果正确就结束,最多录入三次,正确密码为123
"""
# -----for-in循环--------
for i in range(1, 4):
    password = input("请输入您的密码")
    if password == "123":
        print('密码正确')
        break
    elif i == 3:
        print("密码输入次数超限,请稍后再试")
    else:
        print("密码输入错误", "您还可输入", 3-i, "次")
# -----while循环--------
i = 1
while i <= 3:
    password = input("请输入您的密码")
    if password == "123":
        print('密码正确')
        break
    elif i == 3:
        print("密码输入次数超限,请稍后再试")
    else:
        print("密码输入错误", "您还可输入", 3 - i, "次")
        i += 1

        continue语句

                用于结束循环结构,并进行下一次循环,通常与分支结构if一起使用。continue语句的作用是跳过本次循环体中剩下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为只是中止(跳过)本次循环,接着开始下一次循环。

"""
输入1到50之间所有5的倍数
"""
for i in range(1, 51):
    if not i % 5:
        print(i)
# -----使用continue语句-------
for i in range(1, 51):
    if i % 5:
        continue
    else:
        print(i)

        else语句

#  三次密码问题
for i in range(1, 4):
    password = input('请输入密码')
    if password == '123':
        print('密码正确')
        break
    else:
        print('密码错误,您还可输入', 3-i, "次")
else:
    print('三次密码均错误')
# -----搭配while else使用------
i = 1
while i <= 3:
    password = input('请输入密码')
    if password == '123':
        print('密码输入正确')
        break
    else:
        print('密码错误,您还可输入', 3-i, "次")
        i += 1
else:
    print('三次密码均错误')
# 运行出来感觉有点怪,再改一种
i = 1
while i <= 3:
    password = input('请输入密码')
    if password == '123':
        print('密码输入正确')
        break
    elif i < 3:
        print('密码错误,您还可输入', 3-i, "次")
    i += 1
else:
    print('三次密码均错误')

        嵌套循环

        循环结构中有嵌套了完整的循环结构,其中内层循环作为外层循环的循环体执行

        二重循环中的break 和continue

"""
输出一个3*4的矩阵
"""
for i in range(1, 4):   # 外层循环控制着行数,内层循环控制着打印个数
    for j in range(1, 5):
        print(j, end='\t')
    print()
"""
输出一个乘法表
"""
"打印9*9乘法表"
for i in range(1, 10):
    for j in range(1, i+1):
        print(i, "*", j, '=', i*j, end="\t")
    print()

for i in range(1, 10):
    for j in range(1, 10):
        if i >= j:
            print(i, "*", j, '=', i * j, end="\t")
    print()
# 二重循环中的break和continue用于控制本层循环
'--------break--------'
for i in range(5):  # 外层循环5次
    for j in range(1, 10):
        if j % 2 == 0:
            break
        print(j)
'--------continue--------'
for i in range(5):  # 外层循环5次
    for j in range(1, 11):
        if j % 2 == 0:
            continue
        print(j, end='\t')
    print()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值