# Python 语言中的变量 ## 基本概念 ### 什么是程序 程序是数据和指令的有序集合。写程序,就是用数据和指令控制计算机完成特定任务。 ### 计算机硬件基础 现代计算机遵循冯·诺依曼体系结构,硬件系统由五大部件组成: - **运算器 + 控制器** = CPU(中央处理器),负责执行指令 - **存储器** = 内存(直接寻址)+ 硬盘等外部存储 - **输入设备** = 键盘、鼠标、麦克风、摄像头等 - **输出设备** = 显示器、打印机、扬声器等 ### 二进制基础 计算机内部以二进制(0 和 1)存储和处理数据。二进制的"逢二进一"与十进制的"逢十进一"原理相同。 对于大多数编程工作,我们不需要手动处理二进制转换,但需要了解:无论什么类型的数据,在计算机内存中都以二进制形式存在。 ## 变量和类型 **变量**是存储数据的内存空间,有名字、可读取、可修改,是程序运行的基础。 ### 常用数据类型 | 类型 | 说明 | 示例 | |------|------|------| | `int`(整型) | 整数,支持任意大小 | `100`, `0b100`(二进制), `0o64`(八进制), `0x64`(十六进制) | | `float`(浮点型) | 小数 | `123.45`, `1.2345e2`(科学计数法) | | `str`(字符串) | 文本,用引号包裹 | `'hello'`, `"world"` | | `bool`(布尔型) | 真或假 | `True`, `False` | **简单示例:** ```python print(100) # 整型 print(3.14) # 浮点型 print('hello') # 字符串 print(True) # 布尔型 ``` ## 变量命名 ### 命名规则(必须遵守) 1. 由字母、数字、下划线组成,**数字不能开头** 2. Python **大小写敏感**,`a` 和 `A` 是两个不同的变量 3. 不能与 Python 关键字(如 `if`、`for`、`while`、`True`、`False`)或内置函数名(如 `int`、`print`、`str`)重名 ### 命名惯例(建议遵守) - 变量名使用**小写字母**,多个单词用下划线连接:`user_name`、`total_count` - 受保护变量以单下划线开头:`_internal` - 私有变量以双下划线开头:`__private` - **见名知意**:变量名应体现其含义,避免用 `a`、`b`、`temp` 之类的无意义名称 > **关键字查询**:可用以下代码查看 Python 所有关键字 > ```python > import keyword > print(keyword.kwlist) > ``` ## 变量的使用 ### 基本使用 ```python a = 45 # 定义变量 a,赋值为 45 b = 12 # 定义变量 b,赋值为 12 print(a, b) # 输出: 45 12 print(a + b) # 加法: 57 print(a - b) # 减法: 33 print(a * b) # 乘法: 540 print(a / b) # 除法: 3.75 ``` ### 类型检查 使用 `type()` 函数查看变量类型: ```python a = 100 b = 123.45 c = 'hello' d = True print(type(a)) # print(type(b)) # print(type(c)) # print(type(d)) # ``` ### 类型转换 | 函数 | 作用 | 示例 | |------|------|------| | `int(x)` | 转换为整数 | `int('123')` → `123` | | `float(x)` | 转换为浮点数 | `float('123.45')` → `123.45` | | `str(x)` | 转换为字符串 | `str(100)` → `'100'` | | `bool(x)` | 转换为布尔值 | `bool('hello')` → `True` | | `chr(x)` | 整数转字符 | `chr(100)` → `'d'` | | `ord(x)` | 字符转整数 | `ord('d')` → `100` | ```python print(int('123')) # 字符串转整数: 123 print(int('123', base=16)) # 十六进制字符串转整数: 291 print(int('100', base=2)) # 二进制字符串转整数: 4 print(float('123.45')) # 字符串转浮点数: 123.45 print(bool('hello')) # 非空字符串转布尔值: True print(chr(100)) # 整数编码转字符: 'd' print(ord('d')) # 字符转整数编码: 100 ``` > **注意**:`bool` 转 `int` 时,`True` → `1`,`False` → `0`。非空字符串转 `bool` 都是 `True`,空字符串 `''` 才是 `False`。 ## 总结 - 变量是数据的载体,存储在计算机内存中 - 常用数据类型:整型、浮点型、字符串、布尔型 - 变量命名需遵守规则,避免与关键字冲突,做到见名知意 - 可使用 `type()` 检查类型,`int()`、`float()`、`str()` 等函数进行类型转换