适合已学会一门任意其他语言来速通 Python 语法,不然可能会有些困难嗷┗|`O′|┛ ~~
Python
一、基础语法
1. 标记
① 注释:# 、""" """
2. 输出与输入
① 输出:print()
② 输入:input()
3. 量与运算符
① 声明变量:变量名 [= 变量值] 声明常量:大写字母(非强制)
-
类型注解:
变量名: 数据类型 [= 变量值]容器类型注解:变量名: 容器类型[数据类型] [= 变量值]函数类型注解:
def 函数名(同上) -> 返回值数据类型: -
Union[数据类型1, 数据类型2, …]:用于不纯洁的容器类型注解
② 数学运算符:+ 、- 、* 、** 、/ 、// 、%
③ 赋值运算符:= 、+= 、-= 、*= 、**= 、/= 、//= 、%=
④ 比较运算符:> 、< 、>= 、<= 、== 、!=
⑤ 逻辑运算符:and、or、not
4. 数据类型
① 数字(Number)
- 整形(int) 浮点型(float) 复数(complex) 布尔(bool)
② 字符串(String)
- 字符串拼接:
+占位拼接:%s d f和% (拼接1, 拼接2, ...)精度控制:%m.n s d f - 格式化拼接:
f'...{}...{}...{}...' - 常用方法:自己查
③ 列表(List):有序可变序列
- 定义:
变量名 = []或变量名 = list() - 常用方法:自己查
④ 元组(Tuple):有序不可变序列
- 定义:
变量名 = ()或变量名 = tuple() - 常用方法:自己查
⑤ 集合(Set):无序不重复集合
- 定义:
变量名 = {}或变量名 = set() - 常用方法:自己查
⑥ 字典(Dictionary):无序 key-value 集合
- 定义:
变量名 = {}或变量名 = dict()(其中元素需为键值对) - 常用方法:自己查
5. 选择、循环
α、选择结构
if 条件: | |================================if 条件: | |else: | |================================if 条件1: | |elif 条件2: | |else: | |β、循环结构
while 条件: | |================================for x in 序列: | |
以及 continue 和 break6. 函数
def 函数名(): | | return
global 可以将函数中的局部变量变为全局变量① 多返回值:return x, y 和 x, y = 函数()
② 不定长参数:
-
位置不定长:
函数(*args)以元组形式接收 -
关键字不定长:
函数(**kwargs)以字典形式接收
③ lambda 函数:lambda 参数: 一行代码
sp.常用函数
① type():获取数据类型
② 数据类型():数据类型转换
③ range():获取一个 [ , ) 的数字序列,第三个参数位置为步长,默认为 1
二、类
1. 创建类
class 类名: 成员变量名1 = None __成员变量名2 = None // __ 相当于 "private" 不标注默认为 "public" ......
def __init__(self, 变量1, 变量2): // 构造方法 self.成员变量名1 = 变量1 self.成员变量名2 = 变量2 ... def __str__(self): // "toString()" return "..." def __lt__(self, other): // 无等号比较大小 return ... </> ... def __le__(self, other): // 有等号比较大小 return ... <=/>= ... def __eq__(self, other): // 相等比较 return ... == ... ......
def 成员方法名1(self): // self 用于访问成员变量/成员方法 def __成员方法名2(self): ......
对象名 = 类名()对象名.成员方法名1()2. 类特性
① 封装: 、__
② 继承:class 子类(父类1, 父类2, …):
-
pass 关键字表示空白,无内容
-
super():用于访问父类成员变量或成员方法
③ 多态:继承后,重写父类方法。不同子类传入父类,同一父类方法表现不同子类的重写方法
三、其他
1. 异常
try: // 捕获异常 | |except Exception as e: // 有异常执行 | |else: // 无异常执行 | |finally: // 有无异常均执行 | |2. 模块与包
① 导入模块
[from 模块名] import [模块 变量 函数 类 *] [as 别名]
import 包.模块 // 全局导入模块.xxx
from 包.模块 import 类/变量/函数 // 局部导入类/变量/函数② 自定义模块
自定义模块名.py
__all__ = ['功能1', '功能2', ...] // 使用 * 导入此模块时,仅会导入列表中功能,不写则导入所有
......各种自定义的 变量 函数 类......
if __main__ == '__main__': // 此模块被导入时,不执行以下测试内容 测试内容③ 自定义包
自定义包名(文件夹):各种模块 + __ init __.py
__all__ = ['模块1', '模块2', ...] // 使用 * 导入此包时,仅会导入列表中模块,不写则导入所有**安装第三方包:**pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 包名
3. Python常用包
① JSON
import json
json.dumps(xxx, ensure_ascii=False) // 将 Python 列表/字典转化为 JSON 格式json.loads(xxx) // 将 JSON 数据转化为 Python 列表/字典② PyEcharts
③ PySpark
部分信息可能已经过时









