Python-循环和判断语句

1.Python判断语句

1.1 布尔类型和比较运算符

布尔类型:True表示真(是、肯定)False表示假(否、否定)

定义时可以直接赋值给变量如:变量名称 = 布尔类型字面量

比较运算符:

 1.2 if语句的基本格式

 基本语法:if 要判断的条件:      条件成立时,执行语句   

age = 18
if age >= 18:
    print("我已经成年了")
    print("我要扛起家中的责任了")

print("时间过的真快")

 这里有几个注意事项:

  • 判断条件的结果一定要是布尔类型
  • 不要忘记判断条件后的: 冒号
  • 归属于if语句的代码块,需在前方填充4个空格缩进

1.3 if else语句

if erlse语句整体的思想和C语言大同小异,仍然是条件满足时,执行if语句中的指令,不满足时,执行else中的语句指令。

age = 17
if age >= 18:
    print("我已经成年了")
    print("我要扛起家中的责任了")
else:
    print("我还未成年,还可以尽情享受童年")
    print("还需要努力学习考大学")

这里需要注意以下几点: 

  • else不需要判断条件,当if的条件不满足时,else执行
  • else的代码块,同样要4个空格作为缩进

1.4 if elif else语句

if elif else语句呢,其实就是我们C语言当中的if else if  else类似,它们的思想大同小异。主要完成的功能就是多个条件的判断

age = int(input("你的年龄是:"))
if age >= 18:
    print("我已经成年了")
    print("我要扛起家中的责任了")
elif age <= 6:
    print("我还未成年,还可以尽情享受童年")
else:
    print("还需要努力学习考大学")

这里需要注意以下几点:

  • elif可以写多个
  • 判断是互斥且有序的,上一个满足后面的就不会判断了
  • 可以在条件判断中,直接写input语句,节省代码量

1.5 判断语句的嵌套

其实在这里的判断语句的嵌套和C语言中的if语句嵌套if语句思想完全一致。就是用于多条件、多层次的逻辑判断。

age = int(input("你的年龄是:"))
if age >= 18:
    print("我已经成年了")
    if age >=22:
        print("大学毕业,需要找工作")
    else:
        print("大学还未毕业,需要提升专业知识")
elif age <= 6:
    print("我还未成年,还可以尽情享受童年")
else:
    print("还需要努力学习考大学")

 这里需要注意:

  • 嵌套判断语句,一定要注意空格缩进,Python通过空格缩进来决定层次关系

2.Python循环语句

2.1 while循环

此处while循环和C语言当中的while循环也几乎一致,无非就是简化了部分标点符号,让代码写起来更加简单明了。

i = 18
while i < 22 :
    print("年龄为:%d, 正在上大学" % i)
    i += 1
if i == 22:
    print("年龄为:%d,大学毕业,需要找工作" % i)

这里需要注意:

  • while的条件需得到布尔类型,True表示继续循环,False表示结束循环
  • 需要设置循环终止的条件,否则将无限循环
  • 空格缩进和if判断一样,都需要设置

while循环的嵌套,和if语句的嵌套类似,仍然要注意空格缩进,它仍然是基于空格缩进来决定层次关系,需要注意条件的控制,防止无线循环,除非需要无线循环

补充两个知识点:第一个就是:在我们使用的print语句中输出内容会自动换行,那如果输出不换行我们又该怎么办呢?其实很简单,在print语句中,加上end=' ',即可输出不换行

第二个就是:在字符串中,有一个特殊符号: \t,效果等同于在键盘上按下tab键。它可以让我们的多行字符串进行对齐。

2.2 for循环 

这里的for循环与C语言当中的for循环便大相径庭,这里for循环是一种”轮询”机制,是对一批内容进行”逐个处理,就是将”待办事项”逐个完成的循环机制

name = "zhangsan"
for n in name:
    print(n)

这里需要注意:

  • 同while循环不同,for循环是无法定义循环条件的。只能从被处理的数据集中,依次取出内容进行处理,因此,Python的for循环无法构建无限循环
  • 循环内的语句,需要有空格缩进
  • 它的变量作用域在编程规范上,是只限定在for循环内部,但是实际上是可以访问到的,这和C语言也是有一定的差别,但是不推荐在for循环外部进行访问该变量,要符合规范。如果要访问,可以预先在循环外定义,之后再使用

for循环的嵌套: 同while循环一样,for循环也可以进行嵌套,而且和while循环可以相互嵌套,但仍然需要注意的就是空格缩进,依然是靠此来确定层次关系。

2.3 range 

上面for循环当中n的取值就是来自一个待处理数据集,这个待处理数据集就是一个序列类型,序列类型其实就是指内容可以一个个依次取出的一种类型。它包括:字符串、列表、元组等。那么range语句就是获得一个简单的数字序列。

for n in range(5):#(1)
    print(n)#0 1 2 3 4
for n in range(0, 5):#(2)
    print(n)#0 1 2 3 4
for n in range(0, 5, 2):#(3)
    print(n)#0 2 4

 这里需要注意:

  • 方式1:获取一个从0开始,到num结束的数字序列 (不含num本身)
  • 方式2:获得一个从num1开始,到num2结束的数字序列 (不含num2本身)
  • 方式3:获得一个从num1开始,到num2结束的数字序列 (不含num2本身),数字之间的步长,以step为准 (step默认为1)

2.4 continue和break 

continue的功能和C语言当中的功能大同小异,就是中断本次循环,直接进入下一次循环,需要注意它只可以控制它所在的循环临时中断,对于循环之外的循环体它控制不到。

for i in range(5):
    print("张三")
    for n in range(5):
        print("李四")
        continue
        print("王二")#不会执行
    print("麻子")#会执行

break语句的功能和C语言当中的功能也是一样的,就是直接结束循环,仍然是它只可以控制它所在的循环,循环之外的循环体它控制不到。

for i in range(5):
    print("张三")
    for n in range(5):
        print("李四")#每次只执行一次
        break
        print("王二")#不会执行
    print("麻子")#会执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值