【python基础知识学习(4)】python的判断与循环语句

1. 比较运算符和关系运算符

(1)比较运算符

python中常见的比较运算符如下:

== 检查两个操作数的值是否相等,如果是,则条件为真。 如

a=3,b=3则(a == b) 为 true.

!= 检查两个操作数的值是否相等,如果值不相等,则条件为真。 如

a=1,b=3(a != b) 为 true.

<> 检查两个操作数的值是否相等,如果值不相等,则条件为真。 如

a=1,b=3(a <> b) 为 true。这个类似于 != 运算符
 >检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 如
  a=7,b=3则(a > b) 为 true.

< 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 如

a=7,b=3(a < b) 为 false.
>= 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 
如a=3,b=3则(a >= b) 为 true.

<= 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。

如a=3,b=3(a <= b) 为 true.

(2)关系运算符

python中常见的逻辑关系运算符如下:

and 含义是布尔"与" 
表达式:x and y

or 含义是布尔"或" 
表达式:x or y 

not 含义是布尔"非" 
表达式:not x

2. 判断语句

(1)if (如果)

if语句是用来进行判断的,其使用格式和例子如下:

    age = 25 
    print("------if判断开始------")

    if age>=18:
        print "已成年"

    print("------if判断结束------")

(2)if-else (如果-否则)

if-else 判断语句 ,其使用格式和例子如下:

    t = 1 # 用1代表有车票,0代表没有车票
    if t == 1:
        print("有车票,可以上火车")
        print("可以回老家啦~~~")
    else:
        print("没有车票,不能上车")
        print("明年再见..")

(3)if-elif-else (如果1-如果2-否则)

if-elif-else 判断语句 ,其使用格式和例子如下:

    score = 70

    if score>=90 and score<=100:
        print('本次考试,等级为A')
    elif score>=80 and score<90:
        print('本次考试,等级为B')
    elif score>=70 and score<80:
        print('本次考试,等级为C')
    elif score>=60 and score<70:
        print('本次考试,等级为D')
    else: 
        print('本次考试,等级为E')

注意:elif必须和if一起使用,否则出错。

(3)if 嵌套

通过学习if的基本用法,已经知道了

当需要满足条件去做事情的这种情况需要使用if
当满足条件时做事情A,不满足条件做事情B的这种情况使用if-else

想一想:

现在中,乘坐地铁的实际情况是:先进行安检如果安检通过才会判断是否有车票,或者是先检查是否有车票之后才会进行安检,即实际的情况某个判断是再另外一个判断成立的基础上进行的,这样的情况该怎样解决呢?

答: if嵌套

    t = 1     # 用1代表有车票,0代表没有车票
    k = 9     # 管制刀具的长度,单位为cm

    if t == 1:
        print("有车票,可以进站")
        if k < 10:
            print("通过安检")
            print("终于可以回老家啦~~~")
        else:
            print("管制刀具的长度超过规定,没有通过安检") 
    else:
        print("没有车票,不能进站") 

3. 循环语句

(1)while循环

while循环的格式:

    while 条件:
        条件满足时,做的事情1
        条件满足时,做的事情2
        条件满足时,做的事情3
        ...(省略)...

while循环的示例:

    i = 0
    while i<3:
        print("当前是第%d次执行循环"%(i+1))
        print("i=%d"%i)
        i+=1

上述示例结果:
在这里插入图片描述
while死循环的示例:

    while True:
        print("这是一个死循环") 

while循环计算1~100之间偶数的累积和(包含1和100)

i = 1
sum = 0
while i<=100:
    if i%2 == 0:
        sum = sum + i
    i+=1

print("1~100的累积和为:%d"%sum)

while嵌套循环实现九九乘法表

    i = 1
    while i<=9:
        j=1
        while j<=i:
            print("%d*%d=%-2d "%(j,i,i*j),end='')
            j+=1
        print('\n')
        i+=1
python中%d %2d %02d %-2d% %.2d的区别
%d就是普通的输出了整形数

%2d是将数字按宽度为2,采用右对齐方式输出,若数据位数不到2位,则左边补空格。
%02d,和%2d差不多,只不过左边补0
 
%-2d将数字按宽度为2,采用左对齐方式输出,若数据位数不到2位,则右边补空格
%.2d 输出整形时最少输出2位,如不够前面以0占位。如输出2时变成02,200时只输出200;
输出浮点型时(%.2f)小数点后强制2位输出。

如:

num = 1
print("%d" % (num))
print("%2d" % (num))
print("%02d" % (num))
print("%-2d" % (num))
print("%.2d" % (num))
print("%.2d" % (200))
print('%.2f' % 3.1415926) 
 
print('%.2f' % 3.1455926)
print('%.2f' % 3.1465926) 

运行结果:
在这里插入图片描述

(2)for循环

像while循环一样,for可以完成循环的功能。

而且,在Python中 for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。所有相较于while循环,for循环更常用一些。

for循环的格式:

for 临时变量 in 列表或者字符串等:
    循环满足条件时执行的代码

for循环的示例1:

# 循环对象为字符串
name = 'Arwin' 
for x in name:
    print(x)

for循环的示例2:

# 循环对象为列表
lst = [1,2,3,4,5,6,7]
for x in lst:
    print(x)

for循环的示例3:

# for循环可以配合python内置函数range()使用,来定义包含代码块的重复执行次数
for x in range(4):
    print(x) 

for循环小考题:
有1 2 3 4这四个数字,能组成多少个互不相同且无重复数字的三位数?分别是什么?

count=0
L=[]
for a in range(1,5):
	for b in range(1,5):
		for c in range(1,5):
			if a!=b and b!=c and a!=c:
				count+=1
				L.append(a*100+b*10+c)
print('满足条件的数字有{}个:{}'.format(count,L))

break/continue

break的作用:用来结束整个循环,示例如下:

  name = '12345'

  for x in name: 
      if x == '4': 
          break
      print(x)

运行结果:
在这里插入图片描述
continue的作用:用来结束本次循环,紧接着执行下一次的循环,示例如下:

  name = '12345'

  for x in name:
      print('----')
      if x == '4': 
          continue
      print(x)

运行结果:
在这里插入图片描述
注意:
break/continue只能用在循环中,除此以外不能单独使用

break/continue在嵌套循环中,只对最近的一层循环起作用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lingchen1906

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值