系列文章目录
前言
相信各位伙伴们在前俩次的文章和Python的基础学习中大有收获,这次我们将进入推导式,常见语句和内置函数的学习!跟着博主一起成为一名Ai的算法工程师!
一、 推导式
用更简洁的方式创建列表、字典和集合。是 Python 特有的一种表达式形式。
1.1 列表推导式
a = [1, 2, 3, 4]
result = [x * 2 for x in a] # 创建一个新列表,元素是原列表每个元素的两倍
1.2 字典推导式
a = ['a', 'b', 'c']
result = {x: ord(x) for x in a} # 创建一个字典,将字母映射到对应的ASCII值
1.3 集合推导式
a = [1, 2, 3, 4]
result = {x * 2 for x in a} # 创建一个集合,元素是原列表每个元素的两倍
二、 语句
语句是计算机执行程序的最小单位。
2.1 赋值语句
赋值语句将一个值赋给变量:
a = 5 # 将值 5 赋给变量 a
b = a + 2 # 计算 a + 2 并将结果赋给 b
2.2 条件语句
条件语句用于根据不同的条件来执行不同的代码块。
2.2.1 if-elif-else
常见的条件语句有 if、elif 和 else
语法
if 条件表达式1:
语句块1
elif 条件表达式2:
语句块2
...
elif 条件表达式n:
语句块n
else:
语句块(其他)
小案例
x = 10
if x > 0:
print("x 是正数")
elif x == 0:
print("x 是零")
else:
print("x 是负数")
2.2.2 match-case
在Python3.10版本后更新了match-case语句:
- 当存在多个判断环境时,if-elif-else语句会比较臃肿
- 在判断条件较为简单的前提下,可使用match case来进行多条件判断
- 当x与对应的case匹配后,立刻结束判断,无论后续的case是否匹配
x = 20
match x:
case 10:
print("x is 10")
case 20:
print("x is 20")
case _:
print("x is not 10 ether 20")
# case条件判断并不要求为单一条件,可以进行多条件判断
x = 20
match x:
case 10 | 20 | 30:
print("x为10、20、30中的一个")
case _:
print("x不为10、20、30中的任何一个")
# match case支持在判断条件中套用if判断
x=20
match x:
case x if x>10:
print("x大于10")
case x if x<30:
print("x大于10小于30")
2.3 循环语句
循环语句用于重复执行一段代码,直到满足某个条件。常见的循环语句有 for 循环和 while 循环。
2.3.1 for循环
遍历可迭代对象(如列表、元组、字典等)
遍历是指经历且只经历一遍
可迭代对象是指能够依次获取数据元素的对象
for i in range(5):
print(i) # 输出 0, 1, 2, 3, 4
2.3.2 while循环
当条件为 TrueTrueTrue 时重复执行
-
语法
while 真值表达式: 语句块1 (*此部分可能会重复执行) else: 语句块2 -
参考代码
count = 0 while count < 5: print(count) count += 1 # 输出 0, 1, 2, 3, 4 -
while循环是可以嵌套的
2.3.3 range
-
作用
用来生成一个能够得到一系列整数的可迭代对象(也叫整数序列生成器)
-
调用格式
range(stop) # stop 停止整数 range(start, stop) # start 开始整数 range(start, stop, step) # step 步长range 函数调用会生成从 start 开始,到 stop 结束(不包含stop) 的一系列整数,整数的间隔 step
start 默认值为0, step 默认值为1
-
示意
range(4) # 生成 0 1 2 3 range(3, 6) # 生成 3 4 5 range(1, 10, 2) # 生成 1 3 5 7 9 range(5, 0, -2) # 生成 5 3 12.5 循环控制语句
跳转语句用于控制程序的执行流程。
2.5.1 break
跳出整个循环。
for i in range(5):
if i == 3:
break # 退出循环
print(i)
# 输出:0, 1, 2
2.5.2 continue
跳过当前循环,继续下一次循环。
for i in range(5):
if i == 3:
continue # 跳过打印 3
print(i)
# 输出:0, 1, 2, 4
2.5.3 pass
占位符,什么也不做,通常用于占据语法上必须有代码的地方。
def empty_function():
pass # 这里不做任何事情
三, 内置函数
Python提供了大量的可直接使用的内置函数,主要执行一些常见的操作:数据处理、类型转换、数学计算、输入输出等。
官方地址:https://docs.python.org/zh-cn/3.13/library/functions.html
3.1 all()
如果可迭代对象中的所有元素都为 True,返回 True,否则返回 False。
print(all([True, True, False])) # 输出: False
print(all([1, 2, 3])) # 输出: True
3.2 sum()
返回可迭代对象中所有元素的总和。
print(sum([1, 2, 3])) # 输出: 6
3.3 sorted()
返回一个新列表,其中包含可迭代对象中的元素,按照升序排序。
print(sorted([3, 1, 2])) # 输出: [1, 2, 3]
3.4 reversed()
返回一个反向迭代器。
print(list(reversed([1, 2, 3]))) # 输出: [3, 2, 1]
3.5 callable()
检查对象是否可以被调用(即是否是函数或方法)。
print(callable(print)) # 输出: True
print(callable(123)) # 输出: False
3.6 zip()
将多个可迭代对象打包成一个元组,常用于并行遍历多个序列。
names = ["Alice", "Bob"]
ages = [25, 30]
zipped = zip(names, ages)
print(list(zipped)) # 输出: [('Alice', 25), ('Bob', 30)]
3.7 eval()
将字符串作为有效的 Python 表达式来执行,并返回结果。
x = 10
result = eval("x + 5")
print(result) # 输出: 15
3.8 exec()
执行存储在字符串中的 Python 代码。
code = 'for i in range(3): print(i)'
exec(code)
# 输出:
# 0
# 1
# 2
3.9 globals() 和 locals()
globals() 返回当前全局符号表(一个字典);locals() 返回当前局部符号表(也是字典)。
x = 10
print(globals()) # 输出: 包含全局变量的信息
print(locals()) # 输出: 包含局部变量的信息
3.10 filter()
从可迭代对象中过滤出符合条件的元素。
numbers = [1, 2, 3, 4, 5]
filtered = filter(lambda x: x % 2 == 0, numbers)
print(list(filtered)) # 输出: [2, 4]
总结
推导式,循环,选择这些语句在我们的后面会越来越频繁的出现,各位小伙伴如果想要更好的学习,可以在网上寻找一些案例来进行自己的训练和编写。形成一套自己的编程体系,每一个逻辑都要清晰,可以在脑子里先构思,接着在本子上做一个大致的草稿,这样我们在写代码的时候就不会茫然了。最后希望各位关注我收藏的小伙伴可以紧紧跟随博主的学习脚步,继续的努力下去,争取一起变强寻得一份满意的工作!!!
958

被折叠的 条评论
为什么被折叠?



