数据类型
python 基础数据类型
数值型 int float bool long complex
字符串型 str
容器型 list dict tuple set
`None` 空值
len(字符串)
个数
str 字符串
\n
换行 \t
制表位TAB \b
退格 \v
回车
名称 = '\141\142\143
8 进制
名称 = '\x61\x62\x63
16 进制
名称 = '\u9a86\u660a'
Unicode字符编码
\\
代替 \
\'
代替 '
\"
代替 "
r''
去掉 转移字符
b''
bytes类型
f'xxx{表达式}xxx'
表达式
"""内容"""
可以输入多行内容
值 in 字符串
判断是否有这个值, 可以加not in
方法
字符串.find(值, 开始位置, 结束位置)
寻找值下标
字符串.index(值, 开始位置, 结束位置)
寻找值下标 不存在抛出异常
字符串.replace(被替换,替换为,次数)
返回 替换 如果次数为空表示全部替换,也可以用于删除
字符串.count(值)
列表里有几个这样值
字符串.split(值)
变量以值分割成列表
'值'.join(表)
列表以值连接为字符串
字符串.decode('utf-8')
指定编码
字符串.capitalize()
返回 首字母大写
字符串.title()
返回 字符串每个单词首字母大写
字符串.upper()
返回 字符串变大写
字符串.startswith('值')
字符串是否以指定的字符串开头
字符串.endswith('值')
字符串是否以指定的字符串结尾
字符串.center(50, '值')
返回 符串以指定的宽度居中并在两侧填充指定的字符
字符串.rjust(50, '值')
返回 字符串以指定的宽度靠右放置左侧填充指定的字符
字符串.isdigit()
返回 字符串是否由数字构成
字符串.isalpha()
返回 字符串是否以字母构成
字符串.strip()
返回 去掉左右两侧空格
format
格式化
print('{} {}'.format('hello','world'))
print('{0} {1} {0}'.format('hello','world'))
print('{a} {tom} {a}'.format(tom='hello',a='world'))
print('{} {}'.format(表达式,表达式))
'X: {0[0]}; Y: {0[1]}'.format(['aaa','bbb'])
'X: {0[a]}; Y: {0[b]};X: {1[aa]}; Y: {1[bb]}'.format({'a': 'test_a', 'b': 'test_b'}, {'aa': 'test_a', 'bb': 'test_b'})
list 列表
名称 = [值1, 值2, 值3]
值 in 列表
判断是否有这个值,可以加not in
列表.append(值)
添加
列表.insert(索引, 值)
添加
列表.extend([值])
添加多个值
列表.index(值)
('值',开始位置,结束位置) 寻找值下标
列表.count(值)
列表里有几个这样值
列表.remove(值)
删除第一个匹配的值
del 列表[索引]
删除索引值
列表.clear()
清空值
列表.pop(索引)
取出最后一个元素, 可传索引
Sorted
排序 返回结果
sorted(列表)
参数: reverse 是否为倒序 默认false
参数: key 是否为数量排序 默认false
tuple 元组
名称 = (值, ...)
定义元组
值 in 元组
判断是否有这个值,可以加not in
元组.index(值)
('值',开始位置,结束位置) 寻找值下标
元组.count(值)
元组里有几个这样值
dict 字典
名称 = {'键1':值1, ...}
定义字典
名称 = dict(键1='值1', 键2='值2', ...)
定义字典
字典['键']
访问
字典['键'] = 值
创建 与 更新
值 in 字典
判断是否有这个键, 可以加not in
del 字典['键']
删除
{值,**字典1,**字典1}
将一个或多个字典数据给另外一个字典
字典.update(字典)
添加 多个
字典.update(键1=值1, 键2=值2)
添加 多个
字典.pop(键, '默认值')
通过键获取值 默认值可选 没有值返回默认值
字典.get('键','默认值')
访问键里的值,没找到返回默认值
字典.popitem()
取第一个键值对
字典.clear()
清空
字典.keys()
显示所有键
字典.values()
显示所有值
字典.items()
返回可迭代对象
遍历
for key,value in 字典.items():
print(key+':'+value)
set 集合
集合会自动去除重复元素
名称 = {值1, ...}
默认为 可变集合
'值' in 集合
值是否在集合内
集合1 - 集合2
剪集 集合1 被 集合2 剪掉
集合1 | 集合2
并集 合并两个集合的结果
集合1 & 集合2
交集 相互包含的元素
集合1 ^ 集合2
非交集 相互不包含的元素
集合.add(值)
增加元素
集合.update([值1, 值2])
增加元素 多个
集合.remove(值)
删除元素 带返回值
集合.pop()
取出随机元素 返回值
进制 2 16 32
bytes类型.hex()
bytes 转 16进制
bytes.fromhex(16进制str类型)
16进制str 转 bytes
bytes 字节
str类型.encode(encoding='utf-8')
str 转 bytes
str(str类型, encoding='utf-8')
bytes 转 str
JSON
import json
# 创建字典
data = {"内容" : "内容", "内容" : "内容"}
# 字典 转为 JSON
json.dumps(data)
# JSON 转为 字典
json.loads(data)
Base64
import base64
# 字符串 转 Base64 {字符串|str类型}
str(base64.b64encode(字符串.encode('utf-8')),'utf-8')
# Base64 转 字符串 {字符串|str类型}
base64.b64decode(字符串)
# bytes 转 Base64
base64.b64encode(bytes类型)
枚举
from enum import Enum
class CityName(str, Enum):
Beijing = '北京'
Shanghai = '上海'