条件语句
Python
中,选择(条件)语句可细分为 3 种形式,分别是if
语句、if else
语句和if elif else
语句。
标准格式:
if 表达式 1:
代码块 1
elif 表达式 2:
代码块 2
elif 表达式 3:
代码块 3
...//可以有零条或多条elif语句
else:
代码块 n
表达式可以是一个单纯的布尔值或变量,也可以是比较表达式或逻辑表达式; 如果 if 中的表达式为“真”,程序就会执行 if 中的代码块
代码块指的是具有相同缩进格式的多行代码。一般情况下,一个代码块会被当成一个整体来执行。
Python
是一门很“独特”的语言,它的代码块是通过缩进来标记的,具有相同缩进的多行代码属于同一个代码块, 通常建议缩进 4 个空格。
Python
冒号精确表示代码块的开始点这个功能不仅在条件执行体中如此,后面的循环体、方法体、类体全部遵守该规则。
s = ""
if s :
print('s不是空字符串')
else:
print('s是空字符串')
s = input("请输入一个整数: ")
s = int(s)
if s > 5:
print("大于5")
elif s < 5:
# 空语句,相当于占位符
pass
else:
print("等于5")
assert
断言函数
assert
断言语句和if
分支有点类似,它用于对一个bool
表达式进行断言,如果该bool
表达式为True
,该程序可以继续向下执行;否则程序会引发AssertionError
错误。
s_age = input("请输入您的年龄:")
age = int(s_age)
assert 20 < age < 80
print("您输入的年龄在20和80之间")
"""
请输入您的年龄:23
您输入的年龄在20和80之间
========================
请输入您的年龄:1
Traceback (most recent call last):
File "C:\Users\mengma\Desktop\1.py", line 3, in <module>
assert 20 < age < 80
AssertionError
循环语句
while
循环
Python
中,while
循环只要在条件(表达式)为真的情况下,就会一直重复执行相应的循环代码块。
while
语句的语法格式如下:
while 条件表达式:
代码块
while
语句执行的具体流程为:首先判断条件表达式的值,其值为真(True
)时,则执行代码块中的语句,当执行完毕后,再回过头来重新判断条件表达式的值是否为真,若仍为真,则继续重新执行代码块...如此循环,直到条件表达式的值为假(False
),才终止循环。
# 循环的初始化条件
num = 1
# 当 num 小于100时,会一直执行循环体
while num < 100 :
print("num=", num)
# 迭代语句
num += 1
print("循环结束!")
for
循环
for
循环的语法格式如下:
for 迭代变量 in 字符串|列表|元组|字典|集合:
代码块
格式中,迭代变量用于存放从序列类型变量中读取出来的元素,所以一般不会在循环中对迭代变量手动赋值;代码块指的是具有相同缩进格式的多行代码(和while
一样),由于和循环结构联用,因此代码块又称为循环体。
print("计算 1+2+...+100 的结果为:")
#保存累加结果的变量
result = 0
#逐个获取从 1 到 100 这些值,并做累加操作
for i in range(101):
result += i
print(result)
"""结果为
计算 1+2+...+100 的结果为:
5050
"""
range()
函数的语法格式如下:
range(start,end,step)
此函数中各参数的含义如下:
start
:用于指定计数的起始值,如果省略不写,则默认从 0 开始。end
:用于指定计数的结束值(不包括此值),此参数不能省略。step
:用于指定步长,即两个数之间的间隔,如果省略,则默认步长为 1。
总之,在使用range()函数时,如果只有一个参数,则表示指定的是end;如果有两个参数,则表示指定的是start和end。
for
循环遍历列表和元组
在使用for
循环遍历列表和元组时,列表或元组有几个元素,for
循环的循环体就执行几次,针对每个元素执行一次,迭代变量会依次被赋值为元素的值。
src_list = [12, 45, 3.4, 13, 'a', 4, 56, 'crazyit', 109.5]
my_sum = 0
my_count = 0
for ele in src_list:
# 如果该元素是整数或浮点数
if isinstance(ele, int) or isinstance(ele, float):
print(ele)
# 累加该元素
my_sum += ele
# 数值元素的个数加1
my_count += 1
print('总和:', my_sum)
print('平均数:', my_sum / my_count)
运行结果为:
12
45
3.4
13
4
56
109.5
总和: 242.9
平均数: 34.7
for
循环遍历字典
使用for
循环遍历字典其实也是通过遍历普通列表来实现的。前面在介绍字典时己经提到,字典包含了如下三个方法:
items()
:返回字典中所有key-value
对的列表。keys()
:返回字典中所有key
的列表。values()
:返回字典中所有value
的列表。
my_dict = {'语文': 89, '数学': 92, '英语': 80}
# 通过items()方法遍历所有key-value对
# 由于items方法返回的列表元素是key-value对,因此要声明两个变量
for key, value in my_dict.items():
print('key:', key)
print('value:', value)
print('-------------')
# 通过keys()方法遍历所有key
for key in my_dict.keys():
print('key:', key)
# 在通过key获取value
print('value:', my_dict[key])
print('-------------')
# 通过values()方法遍历所有value
for value in my_dict.values():
print('value:', value)
运行结果为:
key: 语文
value: 89
key: 数学
value: 92
key: 英语
value: 80
-------------
key: 语文
value: 89
key: 数学
value: 92
key: 英语
value: 80
-------------
value: 89
value: 92
value: 80
break
用法
break
用于完全结束一个循环,跳出循环体。 不管是哪种循环,一旦在循环体中遇到break
,系统就将完全结束该循环,开始执行循环之后的代码。
另外,针对嵌套的循环结构来说,Python
的break
语句只能结束其所在的循环体,而无法结束嵌套所在循环的外层循环。
for i in range(0,4) :
print("此时 i 的值为:",i)
for j in range(5):
print(" 此时 j 的值为:",j)
break
print("跳出内层循环")
运行结果为:
此时 i 的值为: 0
此时 j 的值为: 0
跳出内层循环
此时 i 的值为: 1
此时 j 的值为: 0
跳出内层循环
此时 i 的值为: 2
此时 j 的值为: 0
跳出内层循环
此时 i 的值为: 3
此时 j 的值为: 0
跳出内层循环
continue
的用法
continue
语句的作用只能终止本次循环而继续执行下一次循环。
# 一个简单的for循环
for i in range(0, 3 ) :
print("i的值是: ", i)
if i == 1 :
# 忽略本次循环的剩下语句
continue
print("continue后的输出语句")
运行上面程序,将看到如下运行结果:
i的值是: 0
continue后的输出语句
i的值是: 1
i的值是: 2
continue后的输出语句
标签:语句,Python,代码,value,选择,循环,key,print
From: https://www.cnblogs.com/hu-li/p/18343672