1
0
wiki/docs/开发/Python/基本语法.md

120 lines
7.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
id: 基本语法
title: 基本语法
sidebar_position: 2
data: 2022年4月27日
---
## 数据类型
- 整型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`。实际上这个类型并不常用大家了解一下就可以了
### 变量命名
**硬性规则:**
- 变量名由字母广义的Unicode字符不包括特殊字符)、数字和下划线构成数字不能开头
- 大小写敏感大写的`a`和小写的`A`是两个不同的变量)。
- 不要跟关键字有特殊含义的单词后面会讲到和系统保留字如函数模块等的名字冲突
**PEP 8要求**
- 用小写字母拼写多个单词用下划线连接
- 受保护的实例属性用单个下划线开头后面会讲到)。
- 私有的实例属性用两个下划线开头后面会讲到)。
使用 type() 检查变量的类型
**Python中内置的函数对变量类型进行转换。**
- `int()`将一个数值或字符串转换成整数可以指定进制
- `float()`将一个字符串转换成浮点数
- `str()`将指定的对象转换成字符串形式可以指定编码
- `chr()`将整数转换成该编码对应的字符串一个字符)。
- `ord()`将字符串一个字符转换成对应的编码整数)。
## 运算符
| 运算符 | 描述 |
| ------------------------------------------------------------ | ------------------------------ |
| `[]` `[:]` | 下标切片 |
| `**` | 指数 |
| `~` `+` `-` | 按位取反, 正负号 |
| `*` `/` `%` `//` | 整除 |
| `+` `-` | |
| `>>` `<<` | 右移左移 |
| `&` | 按位与 |
| `^` `|` | 按位异或按位或 |
| `<=` `<` `>` `>=` | 小于等于小于大于大于等于 |
| `==` `!=` | 等于不等于 |
| `is` `is not` | 身份运算符 |
| `in` `not in` | 成员运算符 |
| `not` `or` `and` | 逻辑运算符 |
| `=` `+=` `-=` `*=` `/=` `%=` `//=` `**=` `&=` `| =` `^=` `>>=` `<<=` | |
*在实际开发中,如果搞不清楚运算符的优先级,可以使用括号来确保运算的执行顺序。*
## 关键字
| 关键字 | 描述 |
| :------- | :--------------------------------------------- |
| 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 | 用于简化异常处理 |
| yield | 结束函数返回生成器 |
## 注释
- 单行注释 # 和空格开头的部分
- 多行注释三个引号开头三个引号结尾
```python
"""
第一个Python程序 - hello, world!
向伟大的Dennis M. Ritchie先生致敬
Version: 0.1
Author: 骆昊
"""
# hello world
print('hello, world!')
print("你好, 世界!")
```