Python笔记 学习第六天 手把手保姆教程 今天学程序的描述方式、组织结构(顺序结构、选择结构、循环结构)

一、程序的描述方式

①自然语言②流程图③伪代码

 二、程序的组织结构

①顺序结构 ②选择/分支结构 ③循环结构

1、顺序结构 

 

2、选择结构

①单分支结构 

number=eval(input('请输入您的6位中奖号码:'))
#使用if语句
if number==987654:  #等值判断
    print('恭喜您,中奖了!')

if number!=987654:
    print('您未中本期大奖')

print('------以上if判断的表达式,是通过比较运算符计算出来的,结果是布尔值类型')
n=98 #赋值操作
if n%2:  #98%2的余数是0,0的布尔值是False,非0的布尔值为True
    print(n,'是奇数') #由于98%2的余数是0,所以该行代码不执行
if not n%2:  # 98%2的余数是0,0的布尔值是False,not False的结果是True
    print(n, '是偶数')


print('-------判断一个字符串是否是空字符串')
x=input('请输入一个字符串')
if x:  #在Python中一切皆对象,每个对象都有一个布尔值,而非空字符串的布尔值为True,空字符串的布尔值为False
    print('x是一个非空字符串')

if not x:  # 空字符串的布尔值为False,取反,not False的结果为True
    print('x是一个空字符串')

print('------表达式可以是一个单纯对1布尔值变量------')
flag=eval(input('请输入一个布尔类型的值:True或False'))
if flag:
    print('flag的值为True')

if not flag:
    print('flag的值为False')

print('-------使用if语句时,如果语句块中只有一句代码,可以讲语句块直接写在冒号的后面----')
a=10
b=5
if a>b:max=a #语句块只有一句,赋最大值
print('a和b的最大值为:',max)

②双分支结构

#双分支结构
number=eval(input('请输入您的6位中奖号码:'))
#if...else
if number==987654:
    print('恭喜您中奖了!')
else:
    print('您未中本期大奖!')

print('-----以上代码可以使用条件表达式进行简化---')

result='恭喜您中奖了!'if number==987654 else'您未中本期大奖!'
print(result)

print('恭喜您中奖了!'if number==987654 else '您未中本期大奖!')

③多分支结构

 

#多分支结构
score=eval(input('请输入您的成绩:'))
if score<0 or score>100:
    print('成绩有误!')
elif 0<=score<60:
    print('E')
elif 60<=score<70:
    print('D')
elif 70<=score<80:
    print('C')
elif 80<=score<90:
    print('B')
else:
    print('A')
请输入您的成绩:88
B

④嵌套使用 

print('------嵌套使用-------')
answer=input('请问,您喝酒了吗?')
if answer =="y":  #answer的值为y 表示喝酒了
    proof=eval(input('请输入酒精含量:'))
    if proof<20:
        print('构不成酒驾,祝您一路平安')
    elif proof<80:  #20<=proof<80
        print('已构成酒驾,请不要开车')
    else:
        print('已达到了醉驾标准,请千万不要开车')
else:
    print('你走吧,没你事!')
------嵌套使用-------
请问,您喝酒了吗?y
请输入酒精含量:90
已达到了醉驾标准,请千万不要开车

附:and和or连接多个选择条件 

3、循环结构

①for循环

#遍历字符串
for i in 'hello':
    print(i)
#range()函数,Python中的内置函数,产生一个[n,m)的整数序列,包含n,但是不包含m
for i in range(1,11):
    print(i)
    if i%2==0:
        print(i,'是偶数')
#计算1-10之间的累加值
s=0 #用于存储累加和
for i in range(1,11):
    s+=i #相当于 s=s+i
print('1-10之间的累加和为:',s)

print('---------100到999之间的水仙花数---')
'''
153=3*3*3+5*5*5+1*1*1
'''
for i in range(100,1000):
    sd=i%10  #获取个位上的数字  假设153%10 --->3
    tens=i//10%10  #获取十位上的数字  153//10--->15  15%10---->5
    hundred=i//100  #获取百位上的数字 153//100 --->1
    #判断
    if sd**3+tens**3+hundred**3==i:
        print(i)


 #扩展形式 for...else
s=0 #用于存储累加和
for i in range(1,11):
    s+=i #相当于 s=s+i
else:
    print('1-10之间的累加和为:',s)
#循环正常进行了10次如何执行else操作
h
e
l
l
o
1
2
2 是偶数
3
4
4 是偶数
5
6
6 是偶数
7
8
8 是偶数
9
10
10 是偶数
1-10之间的累加和为: 55
---------100到999之间的水仙花数---
153
370
371
407

②while循环

#无限循环while的使用

#(1)初始化变量
answer=input('今天要上课吗?y/n')
while answer=='y': #条件判断
    print('好好学习,天天向上')  #语句块
    #(4)改变变量
    answer=input('今天要上课吗?y/n')

#1-100之间的累加和
s=0 #存储累加和
i=1  #(1)初始化变量
while i<=100: #(2)条件判断
    s+=i #(3)语句块
    #(4)改变变量
    i+=1 #相当于i=i+1
print('1-100之间的累加和:',s)


#无限循环的扩展形式:while-else结构

#1-100之间的累加和
s=0 #存储累加和
i=1  #(1)初始化变量
while i<=100: #(2)条件判断
    s+=i #(3)语句块
    #(4)改变变量
    i+=1 #相当于i=i+1
else:
    print('1-100之间的累加和:',s)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值