Python 基本数据类型
Python3中有六个标准的数据类型,分别是:
Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
对于这个六个标准数据类型,它们的可变情况为:
不可变数据类型:Number、String、Tuple
可变数据类型:List、Set、Dictionary
Python 可变类型的拷贝操作
Python 直接赋值、浅拷贝和深度拷贝解析
这里以List来进行提问。
- List直接赋值
a = [0, 1, ['a', 'b', 'c'], 3]
b = a
在这里变量a和b都指向的是同一个内存地址,因此a或b做任何变化,对方也会跟着变化。
id(a) == id(b) # True
- 浅拷贝
import copy
c = copy.copy(a)
因为使用了copy,相当于开辟了一块新的内存空间,将a的值填充到该空间后,赋值给c。
id(a) == id(c) # False
此时改变a中的元素,则有:
a[0] = 9
print(a) # [9, 1, ['a', 'b', 'c'], 3]
print(c) # [0, 1, ['a', 'b', 'c'], 3]
换句话说,浅拷贝的本质是:
for i, j in zip(a, c):
print(id(i) == id(j))
# False
# True
# True
# True
浅拷贝可以理解为重新创建了一个壳,这个壳和原来的不一样,但是两者内部的元素指向的地址是一致的。
- 深拷贝
d = copy.deepcopy(a)
id(a) == id(d) # False
for i, j in zip(a, c):
print(id(i) == id(j))
# True
# True
# False
# True
可以看到,两者的外层壳和内部引用都变得不一致了。
Python 元类
待了解。
Python 多进程与多线程
找时间补充该部分内容。
Python web框架
回头得搞一搞django。
MySQL
过去一年主要用的mongodb,而绝大多数公司常规用的是MySQL,因此必须弄熟!
网络通信流程
从输入URL到浏览器显示页面发生了什么
在浏览器输入 URL 回车之后发生了什么(超详细版)
如何生动形象、切中要点地讲解 OSI 七层模型和两主机传输过程?
计算机网络协议