从零开始的python学习(三)P25+P26+P27

本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p=6&share_source=copy_web&vd_source=404581381724503685cb98601d6706fb 

上节课学习了位运算符和运算符的优先级,本节学习程序的描述方式,顺序结果,选择结构if结构。

1.程序的描述方式

1)自然语言:就是使用人类语言,直接描述程序。

一般用IPO(input,process,output)模式来描述。

2)流程图:使用一系列图形、流程线和文字说明描述程序的基本操作和控制流程,主要适用于较短的算法。

常见流程图的元素:

流程图例子:

3)伪代码:是介于自然语言和编程语言之间的一种算法描述语言,如果程序比较小,可以直接使用 代码描述。

例子:

2. 顺序结果

程序的组织结构分为三种:分别是顺序结构,选择/分支结构,循环结构

这里先讲顺序结构:

顺序结构就是按照程序语句的自然顺序,从上到下,依次执行每句语句的程序。它是程序语句最基础的语句。

 下面看一个代码实验:

#赋值运算符的顺序,由右向左
name='张三'
age=20
a=b=c=d=100
a,b,c,d='room' #字符串分解赋值
print(a)
print(b)
print(c)
print(d)
print ('----------输入/输出语句也是典型的顺序结构------')
name=input('请输入您的名字:')
age=eval(input('请输入您的年龄:'))
luck_number=eval(input('请输入您的幸运数字:'))
print('姓名:',name)
print('年龄:',age)
print('幸远数字:',luck_number)

 结果如下:

3.选择结构

选择结构也称为分支结构,是按照条件选择执行不同的代码段。

其中,单分支if的语法结构如下: 

注意:冒号和缩进来实现逻辑关系的,所以千万不能弄错。

它的基本用法是:

if 要判断的语句而且在计算机中自动判断其布尔值: 
    print(你想输出的东西)

下面代码里第二个if都用的是if,当然换成elif也能正确输出。 

1)利用计算,将结果转化为布尔型进行判断

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

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

 这里我们执行代码后先输入了987654,回车,结果为:

分析一下代码,因为输入的等于987654, 所以第一个if语句判断为True,直接直接执行语句块,输出“恭喜您!中奖了!”

这里我们执行代码后先输入了765432,回车,结果为:

分析一下该代码,因为765432和987654不等,所以第一个if语句判断为False,根据上面那个流程图,此时退出了该if语句,执行下一段程序;下一段程序也是一个if语句,也就是说第二个判断结果为True,此时执行if语句内的语句块,输出“您未中本期大奖”。以上if判断的表达式,是通过比较运算符计算出来的,结果是布尔值类型,下面也是利用计算来判断:

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,'为偶数')

结果如下:

2)判断字符串非空

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

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

结果输入145,如下: 

3) 利用单纯的布尔型变量

跟上述的计算转化布尔型变量不同,我们也能直接写布尔型变量。代码解释写入了注释中:

print('---------------表达式也可以是一个单纯的布尔型变量----------------')
flag=eval(input('请输入一个布尔类型的值:True或False'))
if flag: #通过eval转化input输出的是纯粹的布尔值,如果没有eval不管输入什么都是True,因为此时按照字符串处理,非空字符串 都是True
    print('flag的值为True')
if not flag:
    print('flag的值为False')

结果如下: 

4) 一些能省则省的写法

语句块只有一句时,直接将语句块写在冒号后面,能省一个回车:

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

结果如下: 

 

本节完 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值