Python基础(2)
2019-07-13 15:17:01 0 举报
AI智能生成
python基础(2)
作者其他创作
大纲/内容
python基础(2)
数据类型之间转换
Python的数据类型
不可变:int bool str tuple
取值方式
索引: str list tuple
键: dict
str转 list
name = \"alex\" print(name.split())
list转 str
lst = [\"1\
list tuple互转
set - list互转
一些坑
# 集合和字典都是迭代的时候不能改变原来的大小
for的死循环
删除列表的坑
成功删除的方式
删除字典的坑
dic = dict.fromkeys(\"12345\
成功删除的方法
二次编码
密码本
ascii -- 没有中文
gbk -- 英文 8b(位) 1B(字节) 中文 16b 2B
unicode -- 英文16b 2B 中文32b 4B
utf-8 -- 英文8b 1B 欧洲16b 2B 亚洲24b 3B
编码
.encode(\"utf-8\")
解码
.decode(\"utf-8\")
以什么编码集(密码本)进行编码就要用什么编码集(密码本)解码
小数据池-- 缓存机制(驻留机制)
判断符号
==
判断两边内容是否相等
is 是
基于内存地址进行判断
必会
代码块:
数字
在同一代码块下 只要内容相同就采用相同的内存地址(-5以后就不是)
数字在做乘法的时候范围 -5 ~ 256
数字在做乘法的时候不能使用浮点数
字符串
在同一代码块下 只要内容相同就采用相同的内存地址
乘法的时候总长度不能超过20
布尔值
在同一代码块下 只要内容相同就采用相同的内存地址
小数据池
深浅拷贝
赋值
拷贝
总结
浅拷贝的时候只拷贝第一层元素
浅拷贝
lst1 = lst.copy( )
# 新开辟一个空间给lst1
深拷贝
集合
定义
没有值的字典
无序 -- 不支持索引
天然去重
增删改查
增加
s.add(\"67\") print(s)
# 只能添加一个
s.update(\"今天\")print(s)
# 迭代添加
删除
print(s.pop()) print(s)
# pop有返回值
s.clear() -- set() 空集合
# 清空
改
先删后加
查
其他操作
print(s1 & s2)
print(s1 | s2)
print(s1 - s2)
print(s1 ^ s2)
print(s1 > s2)
# 父集(超集) True
print(s1 < s2)
# 子集 False
print(frozenset(s1))
# 冻结集合 更不常用
基础数据类型补充
str
不可变数据
首字母大写
.capitalize()
每个单词首字母大写
name.title()
大小写反转
name.swapcase()
居中 -- 填充
name.center( )
查找
name.find()
# find查找不存在的返回-1 存在返回\"0\"
name.index()
拼接
\"_\".join(name)
格式化
%s
f ' '
.format()
name = \
# 按照顺序位置进行填充
# 按照索引值进行填充
# 按照关键字进行填充
字符串的加和乘
加
name = \"alex\"name1 = \"wusir\"print(name + name1)
乘
print(name * 8)
list
list(\"123\")
其他方法
排序
.sort( )
默认升序 字符串也可以排序
反转
.reverse( )
tuple
tu = (\"12\")
# 数据类型是( )中数据本身
dict
随机删除
.popitem( )
python3.6 默认删除最后一个(bug)
批量添加
.fromkeys(\"123\
批量添加键值对{\"1\
批量添加键值对\"键是可迭代对象\
set
set() -- 空集合
{} -- 空字典
set(\"alex\")
# 迭代添加的
bool
True False
数字: 0
字符串: \"\"
列表:[]
元组:()
字典:{}
集合: set()
其他: None
0 条评论
回复 删除
下一页