python流程控制语句——if、for、while

一、分支结构:if语句

if语句是基本的条件测试语句,用来判断可能遇到的不同的情况,并针对不同的情况选择执行某一部分语句
基本格式:
if <条件>:
     <语句>
elif <条件>:
     <语句>
else:
     <语句>
这里需要注意的是,用代码的缩进来表示分层,,并不像c语言中大于一条语句要用花括号,处于同一级的代码缩进量要保持一致。

比较运算符含义
a == ba等于b,返回为真,否则为假
a != ba不等于b返回为真,否则为假
a > ba大于b返回为真,否则为假
a < ba小于b返回为真,否则为假
a >= ba大于等于b返回为真,否则为假
a <= ba小于等于b返回为真,否则为假

上述几种比较运算符,可以用于对数字、字符串、列表、元组及字典进行比较,除了上述的比较运算符外,在条件中也可以使用逻辑运算及一些其他语句

简单示例
(1) 数字比较

代码:
a = 1
b = 2
if a == b:
    print('a = b')
elif a > b:
    print('a > b')
else:
    print('a < b')
    
执行结果:
a < b

(2)字符串比较
从第一个字符串开始比较,比较的是字符对应的ASCII码大小,如果两个字符串字符相同,但是一个字符串的字符多,则多的大。

代码:
a = 'hi'
b = 'hello'
if a == b:
    print(a)
elif a > b:
    print(b)
else:
    print(a+b)
    
执行结果:
hello

(3)列表比较

代码:
a = [2,2]
b = [1,4]
if a == b:
    print(a)
elif a > b:
    print(b)
else:
    print(a+b)

执行结果:
[1, 4]

(4)逻辑运算非

代码:
if not 1:
    print('true')
else:
    print('false')
执行结果:
false
if 嵌套语句
代码:
a = 1
b = 2
if a >= b:
    if a == b:
        print('a = b')
    else:
        print('a > b')
else:
    print('a < b')
执行结果:
a < b

在这里插入图片描述

二、循环语句for

for语句是Pyhon中的循环控制语句。for语句可以用于循环遍历某一对象, 它还具有一个附带的else块。附带的else块是可选的,主要用于处理for语句中包含的break语句。for语句中的break语句,可以在需要的时候终止for循环。如果for循环未被break语句终止,则会执行else块中的语句。在for语句中还可以使用contiune 语句,coniune语句可以跳过位于其后的语句,开始下一轮循环。

语法结构:

 for < in <对象集合>:
      if<条件>:
          break      # 终止循环
      if<条件>:
          continue   # 使用continue跳过其他语句,继续循环
      <其他语句>
 else:  
 	  <>             # 如果循环未被break语句终止,则执行else块中语句。

简单示例:

代码:
for i in [1,2,3,4,5]:
    if i == 6:
        break
    if i == 2:
        continue
    print(i)
else:
    print('all')
 执行结果:
 1
3
4
5
all

for语句中的对象集合可以实列表、字典或元组等,也可以是通过range()函数产生的一个整数列表,以完成计数循环,range()函数原型如下:
range( [ start, ] stop [ , step] )

  • start 可选参数,起始数
  • stop 终止数,如果range只有一个参数x,那么range生产一个从0至x-1的整数列表
  • step 可选参数,步长
代码:
for i in range(2, 6):
    print(i)
执行结果:
2
3
4
5
代码:
for i in range(0,6,2):
    print(i)
执行结果:
0
2
4

for语句遍历字典,默认遍历字典里的键值

代码:
people = { 'tom':170, 'tony':180, 'anni':160, 'deny':187 }
for name in people:
    print(people[name])
 执行结果:
 170
180
160
187

在for循环中,除了循环对象可以实元组以外,循环的目标也可以是元组,可以在循环的过程中对元组进行赋值等操作。

代码:
tt = ( ('a', 'b'), ('c', 'd'), ('e', 'f') )
for t1 in tt:    # 此处的t1相当于一个元组
    print(t1)
执行结果:
('a', 'b')
('c', 'd')
('e', 'f')
代码:
tt = ( ('a', 'b'), ('c', 'd'), ('e', 'f') )
for (x, y) in tt:    # 循环的目标是一个元组
    print(x, y)     
执行结果:
a b
c d
e f

利用for+if语句,实现50-100内素数的输出

代码:
import math
for i in range( 50,100+1 ):
    for t in range( 2,int(math.sqrt(i))+1 ):   //这里利用平方根,只要求解到平方根,没有因数即可。
        if i % t == 0:
            break
    else:
        print(i)
执行结果:
53
59
61
67
71
73
79
83
89
97

三、循环结构:while语句

while语句也是循环控制语句,与for循环不同的是,while 语句只有在测试条件为假时才会停止。在while的语句块中,一定要包含改变测试条件的语句, 以保证循环能够结束,避免死循环的出现。
while 语句包含与if语句相同的条件测试语句,如果条件为假,则终止循环。while 语句有一个可选的else语句块,与for循环中的else语句块一样,当while循环不是由break语句终止时,则会执行else语句块中的话。.continue语句也可以用于whle循环中,其作用与if语句中的 contiune相同,都是跳过continue后的语句,进入下一个循环。

while的一般格式如下:

 while <条件>:
      if <条件>:
          break      # 终止循环
      if <条件>:
          continue   # 跳过后面的语句
      <其他语句>
  else:
      <语句>          # 如果循环未被break语句终止,则执行

注意:while不像for循环,可以遍历某一对象的集合,while最容易出现的问题就是测试条件为真,导致死循环,因此在使用while循环是,应该仔细检查while语句测试条件,避免出现死循环。

代码:
x = 1
while x < 5:
    print(x)
    x = x + 1     # 改变条件,使while增加,以结束循环
执行结果:
1
2
3
4

使用while遍历列表

代码:
I = [ 'a', 'b', 'c', 'd']
i = len(I)     # 获得列表长度
while i != 0:
    print(I[-i])
    i = i - 1
执行结果:
a
b
c
d

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值