博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
07_Python的控制判断循环语句1(if判断for循环)_Python编程之路
阅读量:4676 次
发布时间:2019-06-09

本文共 3984 字,大约阅读时间需要 13 分钟。

Python的数据类型在前几节我们都简单的一一介绍了,接下来我们就要讲到Python的控制判断循环语句

 

在现实编程中,我们往往要利用计算机帮我们做大量重复计算的工作,在这样的情况下,需要机器能对某个条件进行判断,或是对某个行为进行重复操作

这时我们就必须要知道如何去编写循环判断语句

 

if... elif... else

if也就是如果的意思,后面需要加一个判断条件,如果判断条件为真,则执行if下的操作,如果为假则跳过操作

注意在每个判断条件后面要加上冒号,且if下面的语句要注意缩进

In [1]: num = 20In [2]: if num > 10:   ...:     print("条件成立")   ...:     条件成立

  

tips:“ = ”  和 “ == ”的区别:一般的一个等号代表的是赋值,在循环中只能用来和对象名进行比较,“ == ”双等号可以直接用来与值进行比较,例如数字,和字符串

例如

In [3]: name = "susmote"  In [4]: if name == "susmote":   ...:     print("名字是susmote")   ...:     名字是susmoteIn [5]: if name = "susmote":         #如果不用“==”比较值,则会报语法错误   ...:     print("名字是susmote")   ...:       File "
", line 1 if name = "susmote": ^SyntaxError: invalid syntax

 其他的关系运算符如下

大于等于  >=

小于等于 <=  

 

elif在其他语言中叫 “ else if ”,python简化了这个表达式,elif一般是用来判断多个表达式的,也就是说在一个判断语句中可以有多elif,这个也有点类似于其他语言的switch case,当然也要加上else

In [8]: num = 20In [9]: if num > 20:   ...:     print("num大于20")   ...: elif num == 20:   ...:     print("num等于20")   ...: elif num < 20:   ...:     print("num小于20")   ...:       num等于20

  

else下面的执行语句只有当前面的条件都不满足时,才会执行,else在一个判断语句中也是可选的,但为了程序能更清晰的运行,建议还是都加上

一个完整的if,, elif ... else语句

num = input("请输入一个不大于5的数:  ")num = int(num)if num == 0:        print("这个数字是0")elif num == 1:        print("这个数字是1")elif num == 2:        print("这个数字是2")elif num == 3:        print("这个数字是3")elif num == 4:        print("这个数字是4")elif num == 5:        print("这个数字是5")else :        print("你输入的数不符合要求")

  运行结果

[root@localhost ~]# python3 a.py 请输入一个不大于5的数:  3这个数字是3[root@localhost ~]# python3 a.py 请输入一个不大于5的数:  14你输入的数不符合要求

 

while

while循环的正确定义是 while()   括号里面需要加一个判断条件,如果里面的判断为真,则一直执行下面的语句,知道while的判断条件为假才跳出循环

In [1]: num = 10In [2]: while(num > 0 ):   ...:     print(num)   ...:     num -= 1   ...:     10987654321

  

 

当然如果条件一直为真则形成死循环,里边的语句一直会执行,一般程序还是尽量不要出现死循环,死循环很耗系统资源

在这里讲一下条件判断中常用的布尔类型:

布尔类型只有真和假两个值,True or Flase

一般所有的字符串都代表真,数字中只有0是代表假 false

In [15]: while(0):    ...:     print("条件为假,什么都不做")    ...:

  

for

for循环在其他语言中,如C,java,只能通过数字进行循环迭代,Python中你可以对任意有顺序的数据进行for循环获取值,如列表和字符串

python中for循环的语句结构    for  item in sequence       item代表获取到的每个值,sequence代表可循环的数据,列表或字符串

例如

In [16]: info = ["susmote", "18", "13488888888"]In [17]: for item in info:    ...:     print(item)    ...:     susmote1813488888888

  

 

如果是操作一个列表的话,你还可以对他进行其他的改变,如通过for循环对列表内元素进行排序(最原始的办法,一个个判断)

In [28]: for i in num:    ...:     if i < num[0]:    ...:         num.remove(i)    ...:         num.insert(0, i)    ...:     elif i < num[1]:    ...:         num.remove(i)    ...:         num.insert(1,i)    ...:     elif i < num[2]:    ...:         num.remove(i)    ...:         num.insert(2, i)    ...:     elif i < num[3]:    ...:         num.remove(i)    ...:         num.insert(3, i)    ...:     elif i < num[4]:    ...:         num.remove(i)    ...:         num.insert(4,i)    ...:         In [29]: numOut[29]: [1, 3, 5, 6, 7, 9]

  后续在讲排序算法

 

range()

如果你需要重复的生成一组有规律的数字,这时你就需要用到range函数了,他能够生成递进的数字

例如与for循环结合

In [34]: for i in range(5):    ...:     print(i)    ...:     01234

  默认是从0开始迭代生成的

range可以传三个参数  range( a, b ,c )        a代表开始的数字,b代表结束的数字,c代表增量(可为负数)

调用range方法时只传一个参数,a默认为0, b则是你传入的参数,c默认为1

调用range方法时传两个参数,a就是第一个参数,b是后面一个参数,c默认为1,  记住包头不包尾

例如

In [42]: for i in range(2, 6):    ...:     print(i)    ...:     2345In [43]: for i in range(2, 10, 2):    ...:     print(i)    ...:     2468

  

当然也可以为负数

In [44]: for i in range(-10, -80, -10):    ...:     print(i)    ...:     -10-20-30-40-50-60-70

  

对于一个列表,你还可以遍历他的索引,获取值

In [45]: weekdays = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunda    ...: y"]In [46]: for i in range(len(weekdays)):    ...:     print(i, weekdays[i])    ...:     0 Monday1 Tuesday2 Wednesday3 Thursday4 Friday5 Saturday6 Sunday

  

一般我们在进行上述操作时,为了更方便,我们都是使用 enumerate()方法的,他能直接迭代生成索引,这个之后再讲

range()返回的值不是一个列表,只是一个对象,我们把这种对象叫做可迭代对象

我们不仅能够通过for循环输出对象迭代的值,还能直接通过 list() 直接生成列表

In [47]: print(range(10))range(0, 10)In [48]: list(range(10))Out[48]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

  

 

转载于:https://www.cnblogs.com/susmote/p/8728394.html

你可能感兴趣的文章
Linux下Tomcat重新启动
查看>>
HTML Table to Json
查看>>
Theano 学习笔记(一)
查看>>
1.7 节点进行排序显示
查看>>
web最佳实践
查看>>
spring 集成shiro 之 自定义过滤器
查看>>
验证密码不允许有连续三位重复的正则表达式
查看>>
python 中对list去重
查看>>
Mono Libgdiplus库
查看>>
js模糊查询案例
查看>>
c语言基础知识要点
查看>>
Android模拟器无法上网访问网络失败解决办法
查看>>
node启动时, listen EADDRINUSE 报错;
查看>>
vue学习链接
查看>>
Systemd 初始化进程
查看>>
【C#学习笔记】文本复制到粘贴板
查看>>
Windows store 验证你的 URL http:// 和 https:// ms-appx:/// ms-appdata:///local
查看>>
python全栈开发_day7_字符编码,以及文件的基本读取
查看>>
js 验证码 倒计时60秒
查看>>
C#基础
查看>>