条件控制与循环语句

  • 条件控制语句(if、if elif else)
  • 循环语句 (for、 while)
  • 扩展


条件控制语句(if、if elif else)
  1. 简单的if语句
    if…else 的特性
    单独的if不建议使用,需结合else使用
age = input('小明你多大了啊?')
if age >= 18:
    print('小明你是成年人了')
else:
    print('小明你还是骚年')
#  循环语句中的: 回车之后的下一行必须缩进4个空格,可用tab键

if还可以结合其他关系词使用,如and、or、、

num = input('请输入num:')
if num > 100 and num < 200:
    print('你输入的值在100-200之间,值为:',num)
    #  and表示并列关系
if num > 100 or num < 90:
    print('你输入的值大于100或者小于90,值为:',num)
    #  or表示或者关系

python是解释性语言,java是半编译半解释语言

  1. if嵌套语句 if elif else
age2 = input('请输入age:')
if age2 >= 100:
    print('你该去了!')
elif age2 > 80:
    print('你快去了!')
elif age2 > 60:
    print('你还能活几年!')
elif age2 > 30:
    print('你还年轻!')
elif age2 > 18:
    print('你成年了!')
else:
    print('你还是个孩子!')
#  if elif else 的代码效率并不高,在工作中尽量少用,因为返回执行条件判断会对服务器造成压力,同时多次条件判断会影响开发软件的性能!
循环语句 (for、 while)

三种结束while循环的方式

  • else
    python里面的while有else,为了终止死循环,比java的效率高,操作数据安全。else终止循环有弊端,会强制停止。 使用break
#  while容易造成死循环! 不建议进行遍历大量结果集,建议使用for
num2 = 100
while num2 > 100:
    print('num2的值:',num2)
else:
    print('我停下来了')
#  1、 python里面的while有else,为了终止死循环,比java的效率高,操作数据安全。
#      else终止循环有弊端,会强制停止。 使用break
  • break
    大量终止循环用break,他的终止循环是将python解释器终止,程序安全退出。不能唤醒继续执行。
n = 0
while n < 10:
    if n == 5:
        n = n+1
        print(n)
        break
#  大量终止循环用break,他的终止循环是将python解释器终止,程序安全退出。不能唤醒继续执行。
  • continue
    表示结束当前循环,接着执行下一个循环!程序代码不会终止!安全的!
n = 0
while n < 10:
    if n == 5:
        n = n+1
        print(n)
        continue
#  continue表示结束当前循环,接着执行下一个循环!程序代码不会终止!安全的!

for循环的核心是in

在for循环中使用break和continue

stu = ['jack','tom','bob','tony']
for item in stu:  # 用item接收遍历的元素
    print('循环结果为:',item)
    if item == 'tony':
        print('值为:',item)
        break
    print('跳出循环')

stu2=['jack','tom','john','amy','kim','sunny']
for item in stu2:
    if item=='amy':
        print("break终止循环")
        continue
    print(item)

pass语句

a = 1
    if a >1:
        print("cuowu")
        pass
    print(a)

pass新特性

  • 如果程序员没想好业务代码需求,可以暂时不写任何代码,但要利用pass将这个代码块占用,知道业务需求后在书写代码。
  • pass语句的使用表示不希望任何代码或者命令的执行;
  • pass语句是一个空操作,在执行的时候不会产生任何反应;
  • pass语句常出现在if、while、for等各种判断或者循环语句中;
  • 如果利用else 尽量和pass使用,从而提高安全和效率。
"""
9*9乘法表
"""
i = 0
while i < 9:
    i += 1
    j = 0
    while j < 9:
        j += 1
        print(f"{j}*{i}={j*i}", end="")   # end表示的是一行打印出没有结束的数值
    print()   # 此写法不带任何参数,表示的是换行字符串

range()函数

  • range() 函数返回的是一个整数序列的对象,一般用在 for 循环中。
  • 函数语法
    range(start, stop[, step])
  • 参数说明:
    start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    end: 计数到 end 结束,但不包括 end。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
ran = range(10)
print('函数值:', ran)  # 函数值: range(0, 10)
#  生成一个自然数的序列list(ran)
ran = range(10)
print('函数值:', list(ran))  # 函数值: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list(range(10))     # 从 0 开始到 10 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] 
list(range(1, 11))  # 从 1 开始到 11 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 
list(range(0, 30, 5)) # 步长为 5 [0, 5, 10, 15, 20, 25] 
list(range(0, 10, 3)) # 步长为 3 [0, 3, 6, 9] 
list(range(-10 ,0,2)) # 负数 [-10, -8, -6, -4, -2] 
list(range(0)) # [] 
list(range(3, 0)) # []
扩展
  • input函数
    一个获取键盘输入数据的功能。调用后会停止当前程序等待用户输入。
name = input('请输入你的名字:')
print('你的名字:',name)

#  可以嵌套在if中使用
username = input('请输入你的username:')
if username == 'zhangtao':
    print('你的username:',username)
else:
    print('你不是本人!')
  • 结束循环/返回循环的值的方法有
    Java: continue break return
    python:continue break else
  • list列表底层是如何实现的?列表是一种算法
    效率高的原因:对数据的解析很安全,读取二进制字节码的速度很快。
    list底层具有一种计数器/游标/指针===读取方式和list
    list( r ).nextInt():数据在内存是一样一行读取的,不会造成阻塞