2022-01-26 20:15:20 +08:00
|
|
|
|
---
|
2022-04-28 11:20:41 +08:00
|
|
|
|
id: 基本语法
|
|
|
|
|
title: 基本语法
|
|
|
|
|
sidebar_position: 2
|
|
|
|
|
data: 2022年4月27日
|
2022-01-26 20:15:20 +08:00
|
|
|
|
---
|
|
|
|
|
|
2022-04-28 11:20:41 +08:00
|
|
|
|
## 数据类型
|
2022-01-26 20:15:20 +08:00
|
|
|
|
|
|
|
|
|
- 整型:Python中可以处理任意大小的整数(Python 2.x中有`int`和`long`两种类型的整数,但这种区分对Python来说意义不大,因此在Python 3.x中整数只有int这一种了),而且支持二进制(如`0b100`,换算成十进制是4)、八进制(如`0o100`,换算成十进制是64)、十进制(`100`)和十六进制(`0x100`,换算成十进制是256)的表示法。
|
|
|
|
|
|
|
|
|
|
- 浮点型:浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,浮点数除了数学写法(如`123.456`)之外还支持科学计数法(如`1.23456e2`)。
|
|
|
|
|
|
|
|
|
|
- 字符串型:字符串是以单引号或双引号括起来的任意文本,比如`'hello'`和`"hello"`,字符串还有原始字符串表示法、字节字符串表示法、Unicode字符串表示法,而且可以书写成多行的形式(用三个单引号或三个双引号开头,三个单引号或三个双引号结尾)。
|
|
|
|
|
|
|
|
|
|
- 布尔型:布尔值只有`True`、`False`两种值,要么是`True`,要么是`False`,在Python中,可以直接用`True`、`False`表示布尔值(请注意大小写),也可以通过布尔运算计算出来(例如`3 < 5`会产生布尔值`True`,而`2 == 1`会产生布尔值`False`)。
|
|
|
|
|
|
|
|
|
|
- 复数型:形如`3+5j`,跟数学上的复数表示一样,唯一不同的是虚部的`i`换成了`j`。实际上,这个类型并不常用,大家了解一下就可以了。
|
|
|
|
|
|
2022-01-26 20:44:41 +08:00
|
|
|
|
### 变量命名
|
2022-04-28 11:20:41 +08:00
|
|
|
|
|
2022-01-26 20:15:20 +08:00
|
|
|
|
**硬性规则:**
|
|
|
|
|
|
|
|
|
|
- 变量名由字母(广义的Unicode字符,不包括特殊字符)、数字和下划线构成,数字不能开头。
|
|
|
|
|
- 大小写敏感(大写的`a`和小写的`A`是两个不同的变量)。
|
|
|
|
|
- 不要跟关键字(有特殊含义的单词,后面会讲到)和系统保留字(如函数、模块等的名字)冲突。
|
|
|
|
|
|
|
|
|
|
**PEP 8要求:**
|
|
|
|
|
|
|
|
|
|
- 用小写字母拼写,多个单词用下划线连接。
|
|
|
|
|
- 受保护的实例属性用单个下划线开头(后面会讲到)。
|
|
|
|
|
- 私有的实例属性用两个下划线开头(后面会讲到)。
|
|
|
|
|
|
2022-05-30 12:27:50 +08:00
|
|
|
|
使用 type() 检查变量的类型
|
2022-01-26 20:15:20 +08:00
|
|
|
|
|
|
|
|
|
**Python中内置的函数对变量类型进行转换。**
|
|
|
|
|
|
|
|
|
|
- `int()`:将一个数值或字符串转换成整数,可以指定进制。
|
|
|
|
|
- `float()`:将一个字符串转换成浮点数。
|
|
|
|
|
- `str()`:将指定的对象转换成字符串形式,可以指定编码。
|
|
|
|
|
- `chr()`:将整数转换成该编码对应的字符串(一个字符)。
|
|
|
|
|
- `ord()`:将字符串(一个字符)转换成对应的编码(整数)。
|
|
|
|
|
|
2022-04-28 11:20:41 +08:00
|
|
|
|
## 运算符
|
|
|
|
|
|
|
|
|
|
| 运算符 | 描述 |
|
|
|
|
|
| ------------------------------------------------------------ | ------------------------------ |
|
|
|
|
|
| `[]` `[:]` | 下标,切片 |
|
|
|
|
|
| `**` | 指数 |
|
|
|
|
|
| `~` `+` `-` | 按位取反, 正负号 |
|
|
|
|
|
| `*` `/` `%` `//` | 乘,除,模,整除 |
|
|
|
|
|
| `+` `-` | 加,减 |
|
|
|
|
|
| `>>` `<<` | 右移,左移 |
|
|
|
|
|
| `&` | 按位与 |
|
|
|
|
|
| `^` `|` | 按位异或,按位或 |
|
|
|
|
|
| `<=` `<` `>` `>=` | 小于等于,小于,大于,大于等于 |
|
|
|
|
|
| `==` `!=` | 等于,不等于 |
|
|
|
|
|
| `is` `is not` | 身份运算符 |
|
|
|
|
|
| `in` `not in` | 成员运算符 |
|
|
|
|
|
| `not` `or` `and` | 逻辑运算符 |
|
2022-05-30 12:27:50 +08:00
|
|
|
|
| `=` `+=` `-=` `*=` `/=` `%=` `//=` `**=` `&=` `| =` `^=` `>>=` `<<=` | |
|
2022-01-26 20:15:20 +08:00
|
|
|
|
|
2022-02-11 08:49:05 +08:00
|
|
|
|
*在实际开发中,如果搞不清楚运算符的优先级,可以使用括号来确保运算的执行顺序。*
|
|
|
|
|
|
|
|
|
|
## 关键字
|
|
|
|
|
|
|
|
|
|
| 关键字 | 描述 |
|
|
|
|
|
| :------- | :--------------------------------------------- |
|
|
|
|
|
| and | 逻辑运算符。 |
|
|
|
|
|
| as | 创建别名。 |
|
|
|
|
|
| assert | 用于调试。 |
|
|
|
|
|
| break | 跳出循环。 |
|
|
|
|
|
| class | 定义类。 |
|
|
|
|
|
| continue | 继续循环的下一个迭代。 |
|
|
|
|
|
| def | 定义函数。 |
|
|
|
|
|
| del | 删除对象。 |
|
|
|
|
|
| elif | 在条件语句中使用,等同于 else if。 |
|
|
|
|
|
| else | 用于条件语句。 |
|
|
|
|
|
| except | 处理异常,发生异常时如何执行。 |
|
|
|
|
|
| False | 布尔值,比较运算的结果。 |
|
|
|
|
|
| finally | 处理异常,无论是否存在异常,都将执行一段代码。 |
|
|
|
|
|
| for | 创建 for 循环。 |
|
|
|
|
|
| from | 导入模块的特定部分。 |
|
|
|
|
|
| global | 声明全局变量。 |
|
|
|
|
|
| if | 写一个条件语句。 |
|
|
|
|
|
| import | 导入模块。 |
|
|
|
|
|
| in | 检查列表、元组等集合中是否存在某个值。 |
|
|
|
|
|
| is | 测试两个变量是否相等。 |
|
|
|
|
|
| lambda | 创建匿名函数。 |
|
|
|
|
|
| None | 表示 null 值。 |
|
|
|
|
|
| nonlocal | 声明非局部变量。 |
|
|
|
|
|
| not | 逻辑运算符。 |
|
|
|
|
|
| or | 逻辑运算符。 |
|
|
|
|
|
| pass | null 语句,一条什么都不做的语句。 |
|
|
|
|
|
| raise | 产生异常。 |
|
|
|
|
|
| return | 退出函数并返回值。 |
|
|
|
|
|
| True | 布尔值,比较运算的结果。 |
|
|
|
|
|
| try | 编写 try...except 语句。 |
|
|
|
|
|
| while | 创建 while 循环。 |
|
|
|
|
|
| with | 用于简化异常处理。 |
|
2022-04-28 11:20:41 +08:00
|
|
|
|
| yield | 结束函数,返回生成器。 |
|
|
|
|
|
|
|
|
|
|
## 注释
|
|
|
|
|
|
|
|
|
|
- 单行注释:以 # 和空格开头的部分
|
|
|
|
|
|
|
|
|
|
- 多行注释:三个引号开头,三个引号结尾
|
|
|
|
|
|
|
|
|
|
```python
|
|
|
|
|
"""
|
|
|
|
|
第一个Python程序 - hello, world!
|
|
|
|
|
向伟大的Dennis M. Ritchie先生致敬
|
|
|
|
|
Version: 0.1
|
|
|
|
|
Author: 骆昊
|
|
|
|
|
"""
|
|
|
|
|
# hello world!
|
|
|
|
|
print('hello, world!')
|
|
|
|
|
print("你好, 世界!")
|
|
|
|
|
```
|