07_Python的控制判断循环语句1(if判断for循环)_Python编程之路

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

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

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

if... elif... else

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

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

In [1]: num = 20

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

  

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

例如

In [3]: name = "susmote"  

In [4]: if name == "susmote":
   ...:     print("名字是susmote")
   ...:
名字是susmote

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

 其他的关系运算符如下

大于等于  >=

小于等于 <=  

 

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

In [8]: num = 20

In [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("你输入的数不符合要求")

  运行结果

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

while

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

In [1]: num = 10

In [2]: while(num > 0 ):
   ...:     print(num)
   ...:     num -= 1
   ...:
10
9
8
7
6
5
4
3
2
1

  

 

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

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

布尔类型只有真和假两个值,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)
    ...:
susmote
18
13488888888

  

 

如果是操作一个列表的话,你还可以对他进行其他的改变,如通过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]: num
Out[29]: [1, 3, 5, 6, 7, 9]

  后续在讲排序算法

range()

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

例如与for循环结合

In [34]: for i in range(5):
    ...:     print(i)
    ...:
0
1
2
3
4

  默认是从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)
    ...:
2
3
4
5

In [43]: for i in range(2, 10, 2):
    ...:     print(i)
    ...:
2
4
6
8

  

当然也可以为负数

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 Monday
1 Tuesday
2 Wednesday
3 Thursday
4 Friday
5 Saturday
6 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

时间: 2024-09-28 22:19:58

07_Python的控制判断循环语句1(if判断for循环)_Python编程之路的相关文章

sql 循环语句几种方式(变量循环,游标循环,事务)

--第一 declare @orderNum varchar(255) create table #ttableName(id int identity(1,1),Orders varchar(255)) declare @n int,@rows int insert #ttableName(orders) select orderNum from FOrders where orderId<50 --select @rows=count(1) from pe_Orders select @ro

循环语句注意事项

三种循环语句的区别? * do...while循环至少执行一次循环体. * for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句. for循环和while循环的区别: *如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环. 不知道用谁就用for循环.因为变量及早的从内存中消失,可以提高内存的使用效率. 需求:在控制台输出所有的"水仙花数"和个数 * 所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身. * 举例:153就是

JAVA学习(四):Java流程控制语句(顺序结构、if条件语句、switch条件语句、循环语句与跳转语句)

Java流程控制语句 本博文将对JAVA中组成各种结构的控制语句进行重点介绍,主要内容是区别于C/C++中的流程控制语句的重点解析. 1.顺序语句 顺序结构中的语句可分为:表达式语句.空语句和复合语句三大类. 注: (1).空语句主要用来作为空循环体,其语法格式如下: : //其实就是一个分号 执行一个空语句,就是将控制转到该语句的结束点.这样,如果空语句是可以到达的,则空语句的结束点也是可以到达的. (2).复合语句又称为语句块,若语句块是空的,则控制转到语句块的结束点. 2.if条件语句 J

《编程导论(Java)&#183;3.2.4 循环语句》

本文完全复制<编程导论(Java)·3.2.4 循环语句>的内容,除[]中的说明文字.请阅读和比较其他编程教材. 我知道,如果我是一个初学者,<编程导论(Java)>很不适合自学.建议同学们阅读时,一定选择一本其他的书同时看,或上网.,因为太一般或简单的内容.或我不想留在书中占用篇幅的东西,都省略了.毕竟,网络上相关的一般描述的内容,大把大把. 卓别林在<摩登时代>中,说明流水线上的工人在高强度下反复执行同一个动作是多么令人郁闷.然而循环/迭代(loop/iterati

04.选择语句与循环语句

一.键盘录入数据 源码程序: /* 为了是程序更灵活,引入键盘录入模块 如何实现键盘录入? A:导包 格式: import java.util.Scanner B:创建键盘录入对象 格式: Scanner sc = new Scanner(System.in) C:通过对象获取数据 格式: int x = sc.nextInt() */ import java.util.Scanner; class ScannerDemo { public static void main(String[] a

python基础之条件循环语句

前两篇说的是数据类型和数据运算,本篇来讲讲条件语句和循环语句. 0x00. 条件语句 条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: Python interprets non-zero values as True. None and 0 are interpreted as False. Python 判断非0的值为 True, 而None和0被认为是 False.注意这里的True和False首字母大写,Py

Web开发(初级)- python、JavaScript及jQuery循环语句

循环语句 一.概述 python中循环语句有两种,while,for: JavaScript中循环语句有四种,while,do/while,for,for/in jQuery循环语句each 二.python循环语句 2.1 for 循环 # a. li = [1, 2, 3, 4] for i in li:     print(i) # b. li = [1, 2, 3, 4] for i, j in enumerate(li, 1):     print(i, j)      # enume

子数涵数&#183;C语言——循环语句

之前,我们讲过了编程中的三种结构(顺序.条件.循环),现在我们来看一下循环语句如何编写. 一.while循环语句(先判断后执行) 1 #include<stdio.h> 2 int main(void) 3 { 4 int sum=0,i=1; //定义变量sum的值为0,变量i的值为1 5 while(i<=100) //当i小于等于100时,进入循环 6 { //while(){}:括号内为条件表达式,花括号内为循环体 7 sum=sum+i; //用sum来做累加器 8 i++;

循环语句(for、while)(一)

2016-12-18 while循环结构; while语句是Python语言中最通用的迭代结构. while语句最完整的书写格式是:首行以及测试表达式,有一列或多列缩进语句的主体以及一个可选的else部分(控制 权离开循环而又没有碰到Break语句时会执行).Python会一直计算开头的测试,然后执行循环主体内的语句,直到测试返回值为假. 1 while <test>: #Loop test 2 <statements1> #Loop body 3 else: #Optional