刚学会Python基础,写代码还在靠 for+append 凑数?别慌!这几个进阶偏基础的知识点,既能让代码变优雅,又不搞复杂概念,新手也能秒上手~
1. 推导式:一行搞定列表/字典(告别冗余循环)
还在这样写循环添加元素?
python
# 传统写法
nums = [1,2,3,4,5]
even_squares = []
for num in nums:
if num % 2 == 0:
even_squares.append(num**2)
print(even_squares) # 输出: [4, 16]
试试列表推导式,一行搞定,逻辑更清晰:
python
# 列表推导式
nums = [1,2,3,4,5]
even_squares = [num**2 for num in nums if num % 2 == 0]
print(even_squares) # 输出: [4, 16]
字典推导式也超实用,快速构建键值对:
python
fruits = ["apple", "banana", "cherry"]
fruit_len = {fruit: len(fruit) for fruit in fruits}
print(fruit_len) # 输出: {'apple':5, 'banana':6, 'cherry':6}
2. 解包操作:变量交换/多返回值的优雅姿势
交换变量不用临时变量,解包直接拿捏:
python
a, b = 10, 20
a, b = b, a # 一行交换,无需temp
print(a, b) # 输出: 20 10
函数多返回值接收更简洁,还能忽略无用值:
python
def get_user_info():
return "张三", 25, "北京"
name, age, _ = get_user_info() # _ 忽略不需要的字段
print(f"姓名:{name},年龄:{age}") # 输出: 姓名:张三,年龄:25
3. F-string:格式化输出的"天花板"
告别繁琐的 % 和 format ,F-string直观又强大:
python
score = 92.345
name = "李四"
# 直接嵌入变量,支持格式控制
print(f"{name}的成绩:{score:.1f}分") # 输出: 李四的成绩:92.3分
print(f"及格率:{score/100