Python_7分钟笔记_基础三(判断、循环)

1.逻辑判断——True&False

要实现条件结构或循环结构,那么逻辑判断必不可或缺。既然如此,那我们来看看Python中的逻辑判断。我们知道计算机只会0&1,Python也单一,它的逻辑判断也只有真(True)或者(False),而且具有处女情结的是首字母必须大写。

  • 布尔类型的数据只有两种:真(True)和(False),而且首字母必须大写.

  • 常见布尔运算符号:或、与、非

Python:从逻辑判断开始谈循环

布尔运算符号

Python:从逻辑判断开始谈循环

比较运算符号

  • 3个小问题

  • 问题1:为什么1=1,写成1==1?

    从a=1可知道我们的等号’=’是个赋值符号,以示区别。类似还有\的斜杠写法,姑且理解为约定俗成的语法规定罢了。

  • 问题2:不等于号采用的是!=,而不是<>,意思一样前者是主流.

    X+=1等价于X=X+1,X-=1,等价于X=X-1,一样约定俗称的语法

  • 问题3:为什么 "est"and "est" 返回 "est", 1 and 1 返回 1,而不是返回 True 呢?

    Python 和很多语言一样,都是返回两个被操作对象中的一个,而非它们的布尔表达式True 或 False 。

    这意味着如果你写了 False and 1 ,你得到的是第一个操作字元(False),而非第二个字元(1)。

  • and和or,常用于复合判断2<3 and 2<6

  • 文字太多过于枯燥,来动动笔,写出下列答案。

    1. True and True

    2. False and True

    3. 4 == 1 and 1 == 1

    4. "txt" == "txt"

    5.not (1 != 10 or3 == 4)

    6.not("testing" == "testing" and "Zed" == "CoolGuy")

    7.8 == 8 and not ("testing" == 1 or 1 == 0)

Python:从逻辑判断开始谈循环

2.条件控制(if)

  • 先看个栗子

    用if语句实现:

    age=21

    if age>=18:

    print('your age is',age)

    print('adult')


  • 因此我们要输出小于18的情况的时候需要增加一个else语句。

  • 意思是,如果if判断是False,则不要执行if的内容而执行else的内容。

    age=5

    if age>=18:

    print('your age is',age)

    print('adult')

    else:

    print('your age is',age)


  • 显然我们生活中关于年龄的判断没这么简单,如果类别更多了怎么办?

  • 那就需要采用elif来做更加细致的判断:

    age=5

    if age>=18:

    print('成年人')

    elif age>=6:

    print('青少年')

    else:

    print('儿童')


通过上面的栗子我们可以想相以下几个问题:

  • 1.if对下一行的代码做了什么?

    If 语句为代码创建了一个所谓的“分支”,就跟游戏中的情节分支一样。if语句告诉你的脚本:

    “如果这个布尔表达式为真,就运行接下来的代码,否则就跳过这一段

  • 2. 为什么 if 语句的下一行需要 4 个空格的缩进?

    行尾的冒号的作用是告诉 Python 接下来你要创建一个新的代码区段。

    这根你创建函数时的冒号是一个道理。只要一行以“冒号(colon)” : 结尾,它接下来的内容就应该有缩进。

    #如果下一行没有缩进,则报错。

  • 3.如果多个 elif 区块都是 True 是python 会如何处理?Tab键四格子缩进

    Python 只会运行它碰到的是 True 的第一个区块,所以只有第一个为 True 的区块会被运行。重要


2.1 单条件结构

Python:从逻辑判断开始谈循环

  • 继续吃栗子

Python:从逻辑判断开始谈循环

2.2 多条件控制

Python:从逻辑判断开始谈循环

2.3 if的完整结构:

Python:从逻辑判断开始谈循环

  • 栗子是个好东西

  • 谈谈input有条件的输入。

    #最后看一个有问题的条件判断。很多同学会用 input()读取用户的输入,

    #这样可以自己输入,程序运行得更有意思:

    birth = input('birth: ')

    if birth < 2000:

    print('00 前')

    else:

    print('00 后')

    #输入1982,结果报错:

  • #这是因为input()返回的数据类型是 str,str 不能直接和整数比较,必须先把 str 转换成整数。Python 提供了 int()函数来完成这件事情:

    s = input('birth: ')

    birth = int(s)

    if birth < 2000:

    print('00 前')

    else:

    print('00 后')

Python:从逻辑判断开始谈循环

3.循环(LOOP)

3.1 在python中有两种循环方式:

  • 第一种是 for...in 循环,依次把 list 或 tuple 中的每个元素迭代出来;

  • 第二种循环是 while 循环,只要条件满足,就不断循环,条件不满足时才停止

3.2 for···in循环

  • 先且看两个小栗子:

Python:从逻辑判断开始谈循环

  • sum = 0

    for x in range(101):

    sum = sum + x

    print(sum)

    #计算1+2+···+100

    #range是个左闭右开的函数,range(1,11)表示1-10

    #range()

    函数会从第一个数到最后一个,但不包含最后一个数字。

  • for···in循环的结构

Python:从逻辑判断开始谈循环

  • 在你开始使用 for 循环之前,你需要在某个位置存放循环的结果。

    最好的方法是使用列表(list),顾名思义,它就是一个按顺序存放东西的容器。

  • 如何创建列表:

    将这几个电影名创建为python列表:当幸福来敲门,无法触碰,挪威的森林。

    意思是转化成这样的:movies=['当幸福来敲门','无法触碰','挪威的森林']

    只需要采用以下几个步骤:

1.数据两边加引号,把电影名转换为字符串。

2.用逗号将列表项与下一项分隔开

3.在列表的两边加上开始和结束的括号

4.使用赋值符号=,将这个列表赋值给一个标志符movies

3.3 while循环

  • while循环的结束

  • while-loop 会一直执行它下面的代码片段,直到它对应的布尔表达式为 False 时才会停下来。

  • 再谈冒号

    如果你的某一行是以 : (冒号, colon)结尾,那就意味着接下来的东西是一个新的代码片段,新的代码片段是需要被缩进的。

    #只有将代码用这样的方式格式化,Python 才能知道你的目的。

  • while的结构

Python:从逻辑判断开始谈循环

  • 栗子是个好东西

    a=1

    while a<3:

    print('a小于3')

    #系统就会不断输出a小于3,从而造成死循环。

  • 那如何控制while循环呢?

  • 1.在循环过程中制造某种可以使循环停下来的条件,常用借用break来停止。

Python:从逻辑判断开始谈循环

  • 2.改变循环成立的条件

  • 减少出现死循环的方法:

    1.尽量少用 while-loop,大部分时候采用for-loop更加好 。

    2.重复检查你的 while 语句,确定测试的结果会出现False 

Python:从逻辑判断开始谈循环

  • 好啦,逻辑结构的大体内容介绍至此。至于嵌套问题不是在此想谈的。

  • 在此推荐几本Python入门的教程:

    第一本:编程小白的第一本 Python 入门书 作者:侯爵 (非常用心和美观,推荐5颗星)

    在本文笔记中的彩色图片就是摘抄于本书,大家可以去亚马逊下载免费的,或者图灵社区。

    第二本:笨方法学Python & Python基础教程

    需要注意的是这两本书的代码部分不适合python3.5.

  • 好啦,到此。茄子暂别,下期分享再见。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值