目录

* 一、异常TODO <https://www.cnblogs.com/nickchen121/p/11069996.html#一异常todo>
* 二、深浅拷贝 <https://www.cnblogs.com/nickchen121/p/11069996.html#二深浅拷贝>
* 2.1 拷贝 <https://www.cnblogs.com/nickchen121/p/11069996.html#拷贝>
* 2.2 浅拷贝 <https://www.cnblogs.com/nickchen121/p/11069996.html#浅拷贝>
* 2.3 深拷贝 <https://www.cnblogs.com/nickchen121/p/11069996.html#深拷贝>
* 三、数据类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#三数据类型内置方法>
* 3.1 数字类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#数字类型内置方法>
* 3.1.1 整型 <https://www.cnblogs.com/nickchen121/p/11069996.html#整型>
* 3.1.2 浮点型 <https://www.cnblogs.com/nickchen121/p/11069996.html#浮点型>
* 3.2 字符串类型内置方法
<https://www.cnblogs.com/nickchen121/p/11069996.html#字符串类型内置方法>
* 3.3 列表类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#列表类型内置方法>
* 3.4 元祖类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#元祖类型内置方法>
* 3.5 字典类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#字典类型内置方法>
* 3.6 集合类型内置方法 <https://www.cnblogs.com/nickchen121/p/11069996.html#集合类型内置方法>
* 3.7 布尔类型 <https://www.cnblogs.com/nickchen121/p/11069996.html#布尔类型>
* 四、数据类型分类 <https://www.cnblogs.com/nickchen121/p/11069996.html#四数据类型分类>
* 4.1 按值个数 <https://www.cnblogs.com/nickchen121/p/11069996.html#按值个数>
* 4.2 按有序无序 <https://www.cnblogs.com/nickchen121/p/11069996.html#按有序无序>
* 4.3 按可变不可变 <https://www.cnblogs.com/nickchen121/p/11069996.html#按可变不可变>
一、异常TODO

万能捕捉异常公式
try: # 逻辑代码 1/0 except Exception as e: print(e) division by zero
二、深浅拷贝

2.1 拷贝

拷贝/浅拷贝/深拷贝都是针对可变类型数据而言的
l1 = ['a','b','c',['d','e','f']] l2 = l1 l1.append('g') print(l1) #
['a','b','c',['d','e','f'],'g'] print(l2) # ['a','b','c',['d','e','f'],'g']
如果l2是l1的拷贝对象,则l1内部的任何数据类型的元素变化,则l2内部的元素也会跟着改变,因为可变类型值变id不变

2.2 浅拷贝
import copy l1 = ['a','b','c',['d','e','f']] l2 = copy.copy(l1) l1.append('g')
print(l1) # ['a','b','c',['d','e','f'],'g'] print(l2) #
['a','b','c',['d','e','f']] l1[3].append('g') print(l1) #
['a','b','c',['d','e','f','g'],'g'] print(l2) # ['a','b','c',['d','e','f','g']]
如果l2是l1的浅拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,则l2会跟着改变

2.3 深拷贝
import copy l1 = ['a','b','c',['d','e','f']] l2 = copy.deepcopy(l1)
l1.append('g') print(l1) # ['a','b','c',['d','e','f'],'g'] print(l2) #
['a','b','c',['d','e','f']] l1[3].append('g') print(l1) #
['a','b','c',['d','e','f','g'],'g'] print(l2) # ['a','b','c',['d','e','f']]
如果l2是l1的深拷贝对象,则l1内的不可变元素发生了改变,l2不变;如果l1内的可变元素发生了改变,l2也不会变,即l2永远不会因为l1的变化而变化

三、数据类型内置方法

3.1 数字类型内置方法

3.1.1 整型

* 作用:定义年龄/身高/体重/id号
* 定义方式: age = 18 age = int('18')
* 方法: + - * / % // **
* 多个值or一个值:一个值
* 有序or无序:压根没有有序无序这一说
* 可变or不可变:不可变
* 可变:值变id不变,值变id也变
3.1.2 浮点型

* 作用:定义薪资/价格
* 定义方式: salary = 3.2 salary = float('3.2')
* 方法:+ - * / % // **
* 多个值or一个值:一个值
* 有序or无序:压根没有有序无序这一说
* 可变or不可变:不可变
3.2 字符串类型内置方法

* 作用:姓名/
* 定义方式: name = 'nick' name = "nick" name = ''' nick nick ''' name = """ nick
nick """ name = "'nick'" name = '"nick"'
* 方法
* 优先掌握
* 索引取值
* 切片
* 长度
* 切分split
* 除两边空白strip
* 成员运算in&emsp;not in
* for循环
* 需要掌握
* lstrip/rstrip
* rsplit
* upper/lower
* startstwith/endswith
* join
* replace
* isdigit
* 了解
* find/rfind/index/rindex/count
* center/ljust/rjust/zfill
* expantabs
* capitalize/swapcase/title
* is系列
* 多个值or一个值:一个值
* 有序or无序:有序
* 可变or不可变:不可变
3.3 列表类型内置方法

* 作用:多个女朋友/
* 定义方式:[]内用逗号隔开多个任意数据类型的元素 friends_list =
['longzeluola','canglaoshi','qiaobenai','nick'] lis = list('abcd')
* 方法:
* 优先掌握
* 索引取值(即可取又可改)
* 切片
* 长度
* append
* 成员运算
* for循环
* 需要掌握
* count
* remove
* reverse
* pop
* insert
* sort
* index
* del
* extend
* clear
* 多个值or一个值:多个值
* 有序or无序:有序
* 可变or不可变:可变
3.4 元祖类型内置方法

* 作用:类似于列表,可以取不可以存
* 定义方式: friends_tuple = ('longzeluola','canglaoshi','qiaobenai','nick') tup =
tuple('abcd')
* 方法
* 优先掌握
* 索引取值(无法更改)
* 切片
* 长度
* 成员运算
* for循环
* count
* index
* 多个值or一个值:多个值
* 有序or无序:有序
* 可变or不可变:无可变不可变这一说
3.5 字典类型内置方法

* 作用:值太多列表存容易,取麻烦时使用字典
* 定义方式: nick_info_dict = { 'name':'nick', 'height':180, 'weight':140,
'hobby_list':['read','run','music','fishing','programming','coding','debugging']
} for k,v in nick_info_dict.items(): print(k,v)
* 方法
* 优先掌握
* 按键取值
* 长度
* keys/values/items
* for循环
* 成员运算
* 需要掌握
* pop
* fromkeys
* setdefault
* get
* update
* del
* 多个值or一个值:多个值
* 有序or无序:无序
* 可变or不可变:可变
3.6 集合类型内置方法

* 作用:存多个值,为了集合之间做运算
* 定义方式: s = set() s = {1,2,3,4,5,1}
* 方法:
* 优先掌握
* 去重
* 并集 |
* 交集 &
* 差集 -
* 对称差集 ^
* 父集 >&emsp;>=
* 子集 <&emsp;<=
* ==
* 需要掌握
* add
* difference_update
* isdisjoint
* remove # 值不存在会报错
* discard # 不会报错
* 多个值or一个值:多个值
* 有序or无序:无序
* 可变or不可变:可变
3.7 布尔类型

* 作用:一般用于判断,除了0/None/空/False自带布尔值为False,其他的数据类型自带布尔值为True
四、数据类型分类

4.1 按值个数

一个值 多个值
整型/浮点型/字符串 列表/元祖/字典/集合/
4.2 按有序无序

有序 无序
字符串/列表/元祖 字典/集合
4.3 按可变不可变

可变 不可变
列表/字典/集合 整型/浮点型/字符串

友情链接
KaDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:637538335
关注微信