我将为您详细介绍Python基础语法入门的内容。让我按照目录结构逐一讲解。
2.1 变量命名规则与赋值操作
在Python中,变量就像是一个标签,贴在数据上让我们能够方便地引用它们。Python的变量命名有一套简单但重要的规则。
变量命名规则:
- 只能包含字母、数字和下划线
- 不能以数字开头
- 不能使用Python关键字(如if、for、while等)
- 区分大小写
- 推荐使用小写字母和下划线的组合(snake_case)
赋值操作: Python使用=进行赋值,这实际上是将变量名绑定到某个对象上。
python
# 合法的变量命名示例
student_name = "张三" # 字符串赋值
age = 18 # 整数赋值
is_student = True # 布尔值赋值
score = 95.5 # 浮点数赋值
# 多重赋值 - Python的特色功能
x = y = z = 10 # 三个变量都等于10
a, b = 1, 2 # 同时给两个变量赋值
# 动态类型 - 同一个变量可以指向不同类型的数据
dynamic_var = "hello" # 现在是字符串
dynamic_var = 42 # 现在变成了整数
print(dynamic_var) # 输出: 42变量命名要见名知意,这样代码才容易理解和维护。比如用student_count比用sc要清晰得多。
2.2 基本输入输出:print() 与 input()
Python提供了简单直观的输入输出函数,让我们能够与程序进行交互。
print() 函数: 这是最常用的输出函数,可以输出各种类型的数据。
python
# 基本输出
print("Hello, World!") # 输出字符串
print(42) # 输出数字
print(True) # 输出布尔值
# 输出多个值,用空格分隔
name = "李四"
age = 20
print("姓名:", name, "年龄:", age) # 输出: 姓名: 李四 年龄: 20
# 自定义分隔符和结束符
print("A", "B", "C", sep="-") # 输出: A-B-C
print("Hello", end=" ") # 不换行,以空格结束
print("World") # 输出: Hello World (在同一行)
# 输出到文件(高级用法)
with open("output.txt", "w", encoding="utf-8") as f:
print("保存到文件", file=f) # 这会写入到文件而不是屏幕input() 函数: 用于从用户那里获取输入,返回的总是字符串类型。
python
# 基本输入
user_input = input("请输入您的姓名: ")
print(f"您好, {user_input}!")
# 输入数字需要转换类型
try:
age_input = input("请输入您的年龄: ")
age = int(age_input) # 将字符串转换为整数
print(f"明年您就 {age + 1} 岁了")
except ValueError:
print("请输入有效的数字!")需要注意的是,input()函数总是返回字符串,如果需要数字,必须使用int()或float()进行类型转换,并且要做好异常处理。
2.3 字符串格式化基础方法
字符串格式化是将变量插入到字符串中的重要技术。Python提供了多种格式化方法。
方法一:f-string(推荐,Python 3.6+) 这是最新也是最推荐的格式化方法,简洁高效。
python
name = "王五"
score = 88.5
# 基本f-string用法
message = f"{name}的分数是{score}"
print(message) # 输出: 王五的分数是88.5
# 格式化数字
formatted_score = f"{name}的分数是{score:.1f}" # 保留1位小数
print(formatted_score) # 输出: 王五的分数是88.5
# 表达式计算
total = 100
percentage = f"得分率: {score/total*100:.2f}%"
print(percentage) # 输出: 得分率: 88.50%方法二:format() 方法 这是Python 2.7到3.5时代的主流方法,现在仍然广泛使用。
python
# 位置参数
message1 = "{}的分数是{}".format(name, score)
print(message1) # 输出: 王五的分数是88.5
# 索引参数
message2 = "{1}的分数是{0}".format(score, name)
print(message2) # 输出: 王五的分数是88.5
# 关键字参数
message3 = "{student_name}的分数是{student_score}".format(
student_name=name,
student_score=score
)
print(message3) # 输出: 王五的分数是88.5
# 格式化选项
message4 = "{name}的分数是{score:.1f}".format(name=name, score=score)
print(message4) # 输出: 王五的分数是88.5方法三:% 格式化(传统方法) 这是最老的格式化方法,虽然还能用,但不推荐在新代码中使用。
python
# %s 表示字符串,%f 表示浮点数,%d 表示整数
message = "%s的分数是%.1f" % (name, score)
print(message) # 输出: 王五的分数是88.5字符串格式化方法对比表
| 功能名称 | 调用方法 | 具体功能与注意事项 |
|---|---|---|
| f-string格式化 | f"文本{变量}" | Python 3.6+支持,性能最好,语法最简洁,推荐使用 |
| format()格式化 | "文本{}".format(变量) | 兼容性好,功能强大,适合复杂格式化需求 |
| %格式化 | "文本%s" % 变量 | 老式方法,不推荐新项目使用,但需要了解以维护旧代码 |
完整示例:用户信息格式化输出
python
# 获取用户输入并格式化输出
def format_user_info():
"""演示完整的输入输出和字符串格式化"""
try:
# 获取用户输入
name = input("请输入姓名: ").strip() # strip()去除首尾空格
if not name: # 检查是否为空
raise ValueError("姓名不能为空")
age_str = input("请输入年龄: ").strip()
age = int(age_str)
if age <= 0 or age > 150:
raise ValueError("年龄必须在1-150之间")
height_str = input("请输入身高(米): ").strip()
height = float(height_str)
if height <= 0 or height > 3:
raise ValueError("身高必须在0-3米之间")
# 使用f-string格式化输出
print("\n=== 用户信息 ===")
print(f"姓名: {name}")
print(f"年龄: {age}岁")
print(f"身高: {height:.2f}米")
print(f"明年年龄: {age + 1}岁")
except ValueError as e:
print(f"输入错误: {e}")
except KeyboardInterrupt:
print("\n程序被用户中断")
except Exception as e:
print(f"发生未知错误: {e}")
# 调用函数(取消注释来运行)
# format_user_info()这个示例展示了如何结合输入、类型转换、异常处理和字符串格式化来创建一个完整的用户交互程序。记住,在实际开发中,总是要考虑用户可能输入的各种情况,并做好相应的错误处理。
2.4 本章练习
- 定义两个变量
a = 5,b = 3,输出它们的和、差、积、商。 - 把字符串
'Python'与'3.8'拼接在一起,用print输出结果,中间用空格隔开。 - 编写代码,让用户输入名字,然后打印
你好,名字!。 - 已知圆半径
r = 2,计算圆的面积(取圆周率 3.14),输出结果。