Python基础语法
基础语法
变量和数据类型 - 程序的基础构建块
运算符 - 进行各种计算和比较
流程控制 - 让程序具备逻辑判断能力
循环 - 自动化重复任务
函数 - 代码复用和模块化的关键
核心概念讲解
1. 标识符与命名规范
在Python中,标识符就是我们给变量、函数、类等起的名字。需要遵循一定的规则:
# 合法的标识符
my_variable = 10
_user_name = "张三"
count2 = 20
# 不合法的标识符
2variable = 10 # 错误:不能以数字开头
my-variable = 10 # 错误:不能包含连字符
命名法则:
- 使用下划线命名法:
my_variable_name - 或者驼峰命名法:
myVariableName - 避开Python关键词:
if,for,while等 - 不能用数字开头
2. 代码块与缩进 - Python的特色
Python最具特色的就是使用缩进来表示代码块,这让代码看起来非常整洁:
# 正确的缩进
if True:
print("这属于if语句块")
print("这也在if语句块内")
print("这已经在if语句块外了")
# 错误的缩进会导致错误
if True:
print("这会报错!") # IndentationError
3. 六大数据类型详解
数字类型
# 整数
age = 25
# 浮点数
price = 19.99
# 复数(科学计算用)
complex_num = 3 + 4j
print(f"年龄: {age}, 价格: {price}")
字符串 - 文本的容器
# 三种创建方式
name1 = '张三'
name2 = "李四"
description = """这是一个
多行字符串"""
# 字符串操作
greeting = "Hello" + " " + "World" # 拼接
print(greeting[0]) # 输出: H (索引从0开始)
print(greeting[0:5]) # 输出: Hello (切片)
# 转义字符
text = "他说:\"你好!\"" # 输出: 他说:"你好!"
列表 - 灵活的数据集合
# 创建列表
fruits = ["苹果", "香蕉", "橙子", 123, True]
# 访问元素
print(fruits[0]) # 输出: 苹果
print(fruits[-1]) # 输出: True (倒数第一个)
# 修改列表
fruits[1] = "葡萄" # 修改
fruits.append("西瓜") # 添加
del fruits[3] # 删除
print(fruits) # 输出: ['苹果', '葡萄', '橙子', True, '西瓜']
字典 - 键值对存储
# 学生信息字典
student = {
"姓名": "王小明",
"年龄": 18,
"成绩": 95.5,
"课程": ["数学", "英语", "编程"]
}
# 访问数据
print(student["姓名"]) # 输出: 王小明
print(student.get("年龄")) # 输出: 18
# 修改字典
student["年龄"] = 19 # 修改
student["班级"] = "高三(1)班" # 新增
del student["成绩"] # 删除
print(student)
4. 运算符全解
# 算术运算符
a, b = 10, 3
print(a + b) # 13
print(a - b) # 7
print(a * b) # 30
print(a / b) # 3.333...
print(a // b) # 3 (整除)
print(a % b) # 1 (取余)
print(a ** b) # 1000 (幂运算)
# 比较运算符
print(a > b) # True
print(a == b) # False
print(a != b) # True
# 逻辑运算符
x, y = True, False
print(x and y) # False
print(x or y) # True
print(not x) # False
5. 条件控制 - 让程序会思考
# 简单的if-else
score = 85
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
# 逻辑运算符组合
age = 25
has_license = True
if age >= 18 and has_license:
print("可以开车")
else:
print("不能开车")
6. 循环语句 - 自动化重复任务
while循环
# 计算1-100的和
total = 0
i = 1
while i <= 100:
total += i
i += 1
print(f"1-100的和是: {total}") # 输出: 5050
#打印九九乘法表
i = 1
while i < 10:
j = 1
while j <= i:# 修改条件:j <= i 而非 j < 10
print(f"{j}*{i}={i*j}",end='\t') # 使用制表符对齐
j+=1
print("")# 换行
i+=1
# break示例 - 遇到5就停止
count = 1
while count <= 10:
if count == 5:
break
print(count)
count += 1
for循环
# 遍历列表
fruits = ["苹果", "香蕉", "橙子"]
for fruit in fruits:
print(f"我喜欢吃{fruit}")
# 使用range
for i in range(5): # 0到4
print(i)
for i in range(1, 6): # 1到5
print(i)
for i in range(0, 10, 2): # 0,2,4,6,8
print(i)
7. 函数 - 代码复用
# 定义函数
def greet(name, time="早上"):
"""向某人问好"""
return f"{time}好,{name}!"
# 调用函数
print(greet("张三")) # 位置参数
print(greet(time="下午", name="李四")) # 关键字参数
# 计算阶乘的函数
def factorial(n):
"""计算n的阶乘"""
result = 1
for i in range(1, n + 1):
result *= i
return result
print(f"5的阶乘是: {factorial(5)}") # 输出: 120
实战案例
案例1:BMI计算器
def calculate_bmi(weight, height):
"""计算BMI并给出健康建议"""
bmi = weight / (height ** 2)
if bmi < 18.5:
category = "偏瘦"
elif bmi < 24:
category = "正常"
elif bmi < 28:
category = "超重"
else:
category = "肥胖"
return bmi, category
# 使用示例
my_weight = 70 # 公斤
my_height = 1.75 # 米
bmi, advice = calculate_bmi(my_weight, my_height)
print(f"您的BMI是: {bmi:.2f}")
print(f"健康状况: {advice}")
案例2:猜数字游戏
import random
def guess_number():
"""猜数字小游戏"""
target = random.randint(1, 100)
attempts = 0
print("欢迎来到猜数字游戏!")
print("我已经想了一个1-100之间的数字,来猜猜看吧!")
while True:
try:
guess = int(input("请输入你的猜测: "))
attempts += 1
if guess < target:
print("猜小了,再试试!")
elif guess > target:
print("猜大了,再试试!")
else:
print(f"恭喜你!第{attempts}次猜对了!")
break
except ValueError:
print("请输入有效的数字!")
# 运行游戏
guess_number()
常见问题
** Python中单引号和双引号有区别吗?**
没有本质区别,都可以用来创建字符串。建议在项目中选择一种并保持统一。
为什么我的代码报"IndentationError"?
这是因为缩进不正确。确保同一代码块的缩进空格数相同,建议使用4个空格。
如何判断变量是什么类型?
使用type()函数:print(type(变量名))
break和continue有什么区别?
break会完全退出循环,continue只是跳过当前循环的剩余代码,继续下一次循环。
Python基础语法精要
4787

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



