一、基础语法与数据类型
1.1 输入、输出、注释、变量、常量、关键字
核心概念:
- 输入:input() 函数获取用户输入(返回字符串,需显式转换类型)。
- 输出:print() 支持多参数、sep(分隔符)和 end(结束符)设置。
- 注释:单行用 #,多行用 ''' 或 """,需清晰说明逻辑。
- 变量:用于存储数据的标识符,无需声明类型。遵循标识符规则(字母 / 数字 / 下划线,首字符非数字),区分大小写。
- 常量:通常用大写字母表示,约定为不可变的值。约定全大写命名(如 MAX_SIZE),实际可修改但不推荐。
- 关键字:Python 保留的特殊单词。35 个保留字(如 if/for/class),不可作为变量名。
示例代码:
# 输出
print("Python学习开始!")
# 输入
name = input("请输入姓名: ")
print(f"你好, {name}!")
# 变量与常量
PI = 3.14159 # 常量
radius = 5
area = PI * radius ** 2
print(f"圆面积: {area:.2f}")
# 查看关键字
import keyword
print("Python关键字:", keyword.kwlist)
1.2 数据类型
- 整型(int):整数
- 浮点(float):带小数点的数
- 字符(char):Python 中为单字符字符串
- 布尔(bool):True 或 False
- 字符串(str):文本序列
- 转义字符:如 \n, \t, \\ 等
- 空值(None):唯一实例None,常用于表示变量没有值或函数没有返回值的情况
# 整型
count = 10
print("数量:", count, type(count))
# 浮点
price = 9.99
print("价格:", price, type(price))
# 字符
letter = 'A'
print("字母:", letter, type(letter))
# 布尔
is_valid = True
print("有效:", is_valid, type(is_valid))
# 字符串
message = "Python编程"
print("消息:", message, type(message))
# 转义字符
print("第一行\n第二行\t制表符\n路径: C:\\Program Files")
# 空值(None)
empty_value = None
print("空值:", empty_value, type(empty_value))
字符串常用操作:
text = " Python编程 "
print(text.strip()) # 去除首尾空格 → "Python编程"
print(text.upper()) # 转大写 → " PYTHON编程 "
print(text.replace("编程", "入门")) # 替换 → " Python入门 "
print(text.split("n")) # 分割 → [' Pytho', '编程 ']
print(".".join(["2023", "10", "01"])) # 拼接 → "2023.10.01"
1.3 格式化输出
格式化方式对比:
| 方式 | 优点 | 示例 |
|---|---|---|
| % 格式化 | 传统格式化方式,兼容性好 | "姓名: %s, 年龄: %d" % (name, age) |
| str.format() | 更灵活,支持位置 / 命名参数 | "姓名: {}, 年龄: {}".format(name, age) |
| f-string | 简洁高效(Python3.6+),推荐 | f"姓名: {name}, 年龄: {age+1}" |
# % 格式化
name = "张三"
age = 25
print("姓名: %s, 年龄: %d" % (name, age))
# str.format()
print("姓名: {}, 年龄: {}".format(name, age))
print("姓名: {1}, 年龄: {0}".format(age, name))
# f-string (推荐)
print(f"姓名: {name}, 年龄: {age}")
print(f"明年年龄: {age+1}")
# 格式化数字
pi = 3.1415926
print(f"PI值: {pi:.2f}") # 保留两位小数
print(f"科学计数: {1000000:.2e}")
二、运算符
| 优先级 | 运算符 | 说明 |
|---|---|---|
| 1 | ( ) | 括号用于分组表达式,强制优先计算 |
| 2 | ** | 幂运算,如 2**3 计算 2 的 3 次方 |
| 3 | ~、+x、-x | 按位取反、正负号(单目运算符) |
| 4 | *、/、%、// | 乘除、取模、整除(算术运算符) |
| 5 | +、- | 加减(算术运算符) |
| 6 | <<、>> | 位左移、右移 |
| 7 | & | 按位与(二进制 AND) |
| 8 | ^ | 按位异或(二进制 XOR) |
| 9 | ` | 按位或(二进制 OR) |
| 10 | ==、!=、>、<、>=、<= | 比较运算符,返回布尔值 |
| 11 | is、is not | 身份比较,检查对象引用是否相同 |
| 12 | in、not in | 成员检测,判断值是否存在于容器中 |
| 13 | not | 逻辑非,反转布尔值 |
| 14 | and | 逻辑与,两侧均为真时结果为真 |
| 15 | or | 逻辑或,任一侧为真时结果为真 |
注意:
括号 ( ) 优先级最高,可以强制改变运算顺序。
算术运算符(**、*、/、+、-) 优先级高于 比较运算符(==、>)。
位运算符(<<、>>、&、^、|) 优先级高于 逻辑运算符(and、or)。
not 的优先级高于 and 和 or。

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



