条件控制与循环语句
- 条件控制语句(if、if elif else)
- 循环语句 (for、 while)
- 扩展
条件控制语句(if、if elif else)
- 简单的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是半编译半解释语言
- 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():数据在内存是一样一行读取的,不会造成阻塞