1. Python基础语法精讲
Python作为当下最流行的编程语言之一,其简洁优雅的语法设计让初学者能够快速上手。在第四天的学习中,我们将深入探讨Python的核心语法结构,这些知识将成为你后续开发工作的基石。
1.1 变量与数据类型进阶
Python是动态类型语言,这意味着我们不需要显式声明变量类型。但深入理解数据类型对编写高效代码至关重要。让我们通过几个实例来加深理解:
python复制# 基本数据类型示例
name = "Alice" # 字符串类型
age = 25 # 整型
height = 1.75 # 浮点型
is_student = True # 布尔型
# 类型转换实践
age_str = str(age) # 整型转字符串
height_int = int(height) # 浮点型转整型(会截断小数部分)
注意:在进行类型转换时,要确保数据是可以转换的。例如将包含字母的字符串转换为数字会引发ValueError。
Python还支持复数类型(complex),这在科学计算中非常有用:
python复制z = 3 + 4j # 复数类型
print(z.real) # 输出实部:3.0
print(z.imag) # 输出虚部:4.0
1.2 运算符详解
Python提供了丰富的运算符,除了基本的算术运算符外,还有一些特殊运算符值得关注:
python复制# 成员运算符
fruits = ['apple', 'banana', 'orange']
print('apple' in fruits) # 输出:True
# 身份运算符
a = [1, 2, 3]
b = a
c = [1, 2, 3]
print(a is b) # 输出:True
print(a is c) # 输出:False (虽然内容相同,但是不同对象)
# 海象运算符(Python 3.8+)
if (n := len(fruits)) > 2:
print(f"列表包含{n}个水果") # 输出:列表包含3个水果
运算符优先级是另一个需要重点掌握的概念。当表达式包含多个运算符时,Python会按照特定顺序计算:
- 括号:() 具有最高优先级
- 指数:**
- 按位取反:~
- 乘除:* / // %
- 加减:+ -
- 比较运算符:== != > < >= <=
- 逻辑运算符:not and or
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 流程控制深度解析
掌握流程控制是编程的基本功,Python提供了多种控制结构来管理代码执行流程。
2.1 条件语句实战
if-elif-else结构是Python中最常用的条件控制语句。让我们看一个完整的例子:
python复制# 成绩评级系统
score = 85
grade = ""
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"
elif score >= 70:
grade = "C"
elif score >= 60:
grade = "D"
else:
grade = "F"
print(f"你的成绩等级是:{grade}") # 输出:你的成绩等级是:B
提示:elif是"else if"的缩写,可以有任意多个。条件判断从上到下执行,一旦某个条件满足,就会执行对应的代码块并跳过其余条件。
Python还支持三元运算符,可以简化简单的条件判断:
python复制# 传统写法
if age >= 18:
status = "成年人"
else:
status = "未成年人"
# 三元运算符写法
status = "成年人" if age >= 18 else "未成年人"
2.2 循环结构精要
Python提供了两种主要的循环结构:for循环和while循环。每种循环都有其适用场景。
for循环特别适合遍历序列或可迭代对象:
python复制# 遍历列表
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(fruit)
# 使用range()函数
for i in range(5): # 0到4
print(i)
# 带步长的range
for i in range(0, 10, 2): # 0,2,4,6,8
print(i)
while循环则在不确定循环次数时非常有用:
python复制# 猜数字游戏
import random
target = random.randint(1, 100)
guess = 0
attempts = 0
while guess != target:
guess = int(input("猜一个1-100的数字:"))
attempts += 1
if guess < target:
print("猜小了!")
elif guess > target:
print("猜大了!")
print(f"恭喜!你用了{attempts}次猜中了数字{target}")
循环控制语句break和continue可以改变循环的正常执行流程:
- break:立即退出整个循环
- continue:跳过当前迭代,进入下一次循环
python复制# 查找第一个能被3和5整除的数
for num in range(1, 101):
if num % 3 == 0 and num % 5 == 0:
print(f"找到第一个符合条件的数:{num}")
break
# 打印1-10的奇数
for num in range(1, 11):
if num % 2 == 0:
continue
print(num)
3. 函数定义与使用
函数是组织代码的基本单元,良好的函数设计可以大大提高代码的可读性和复用性。
3.1 函数基础
Python中使用def关键字定义函数,基本语法如下:
python复制def greet(name):
"""这是一个简单的问候函数"""
return f"Hello, {name}!"
message = greet("Alice")
print(message) # 输出:Hello, Alice!
函数可以接受多个参数,也可以有默认值:
python复制def describe_pet(pet_name, animal_type='dog'):
"""显示宠物信息"""
print(f"I have a {animal_type} named {pet_name}.")
describe_pet('Willie') # 使用默认animal_type
describe_pet('Harry', 'hamster') # 指定animal_type
注意:在函数定义中,带有默认值的参数必须放在没有默认值的参数后面。
3.2 参数传递机制
Python中的参数传递有一些独特的特点需要特别注意:
- 位置参数:按照参数位置顺序传递
- 关键字参数:通过参数名指定,可以改变顺序
- 任意数量的参数:使用*args接收多余的位置参数,**kwargs接收多余的关键字参数
python复制def make_pizza(size, *toppings):
"""制作披萨"""
print(f"制作一个{size}寸的披萨,配料
