- 1.dict和list中copy方法画图加代码解释(重新画一下)
- 2.dict中扩展字典长度(多种方法)
- 3.dict中获取所有的key,获取所有的value,获取所有的item
- 4.dict中通过一个不存在的key去获取值(要求不报错)
- 5.定义空集合
- 6.set中,求差集,求合集,求交集(要求在原集合上操作) 添加一个元素 删除一个元素(使用多种方法)
- 求差集,求合集,求交集
- 添加一个元素
- 删除一个元素(使用多种方法)
- 7.数据类型转换:
- 将浮点型,字符串转换成整型
- 将整数,字符串转成浮点型
- 将二进制,八进制,16进制转成10进制
- 将10进制转换成,二进制,八进制,16进制
- 将字符串转换为字节
- 将字节转换成字符串
- 将ascii码转换为字符串
- 将字符串转换成ascii码
首先我们输入下面代码
list_data = [1, 2, [3, 4, 5]]
copy_list = list_data.copy()
print(list_data, copy_list)
print(id(list_data), id(copy_list)) # 查看它两的id
print(id(list_data[0]), id(copy_list[0])) # 查看list_data和copy_list中第一个元素的id
print(id(list_data[1]), id(copy_list[1])) # 查看list_data和copy_list中第二个元素的id
print(id(list_data[2]), id(copy_list[2])) # 查看list_data和copy_list中第三个元素的id
print(id(list_data[2][2]), id(copy_list[2][2])) # 查看list_data和copy_list中第三个元素中的第三个的id
copy_list[0] = 10 # 将copy_list中的第一个元素修改为 10
print(list_data, copy_list) # 输出list_data, copy_list可以看出copy_list中的第一个元素被修改了,而list_data的第一个元素未发生变化
copy_list[1] = 20 # 将copy_list中的第二个元素修改为 20
print(list_data, copy_list) # 输出list_data, copy_list可以看出copy_list中的第二个元素被修改了,而list_data的第一个元素未发生变化
copy_list[2][0] = 30 # 将copy_list中的第三个元素修改为 30
print(list_data, copy_list) # 输出list_data, copy_list可以看出copy_list中的第三个元素被修改了,而list_data的第三个元素也随之变化了
print(id(list_data[0]), id(copy_list[0])) # 查看list_data和copy_list中第一个元素的id
print(id(list_data[1]), id(copy_list[1])) # 查看list_data和copy_list中第二个元素的id
print(id(list_data[2]), id(copy_list[2])) # 查看list_data和copy_list中第三个元素的id
print(id(list_data[2][0]), id(copy_list[2][0])) # 查看list_data和copy_list中第三个元素中的第一个的id
''' 由此我们可以总结出 1.list_data和copy_list是两个独立的对象因为他们地id不
2.浅拷贝是使用copy.copy( )方法,是对拷贝对象中不可变对象的完全拷贝,
如果拷贝对象中存在可变对象,那么可变对象发生变化后,拷贝得到的对象也会发生变化。
'''
2.dict中扩展字典长度(多种方法)
# 1)直接使用[key] = value
dict_var = {1: 2, 2: 3, 3: 4}
dict_var[4] = 5
print(dict_var, type(dict_var))
# 运行结果
# {1: 2, 2: 3, 3: 4, 4: 5}
# 2)使用setdefault插入一个键和键值
dict_var = {1: 2, 2: 3, 3: 4}
dict_var.setdefault(4, 5)
print(dict_var)
# 运行结果
# {1: 2, 2: 3, 3: 4, 4: 5}
# 3)使用update从字典中迭代更新
dict_var = {1: 2, 2: 3, 3: 4}
dict_var1 = {4: 5}
dict_var.update(dict_var1)
print(dict_var)
# 运行结果
# {1: 2, 2: 3, 3: 4, 4: 5}
3.dict中获取所有的key,获取所有的value,获取所有的item
# 3.dict中获取所有的key,获取所有的value,获取所有的item
# 1)key
dict_var = {1: 2, 2: 3, 3: 4}
return_data = dict_var.keys()
print(return_data)
# 运行结果
# dict_keys([1, 2, 3])
# 2)value
dict_var = {1: 2, 2: 3, 3: 4}
return_data = dict_var.values()
print(return_data)
# 运行结果
# dict_values([2, 3, 4])
# 3)item
dict_var = {1: 2, 2: 3, 3: 4}
return_data = dict_var.items()
print(return_data)
# 运行结果
# dict_items([(1, 2), (2, 3), (3, 4)])
4.dict中通过一个不存在的key去获取值(要求不报错)
# 4.dict中通过一个不存在的key去获取值(要求不报错)
# 1)setdefault
dict_data = {1: 548, 2: 54, 3: 40}
return_data = dict_data.setdefault(5)
print(return_data)
# 运行结果
# None
# 2)get
dict_data = {1: 548, 2: 54, 3: 40}
return_data = dict_data.get(63)
print(return_data)
# 运行结果
# None
5.定义空集合
# 5.定义空集合 set_data = set() print(set_data, type(set_data)) # 运行结果 # set()6.set中,求差集,求合集,求交集(要求在原集合上操作) 添加一个元素 删除一个元素(使用多种方法) 求差集,求合集,求交集
# 6.set中,求差集,求合集,求交集(要求在原集合上操作) 添加一个元素 删除一个元素(使用多种方法)
# 1) 差集
set_data = {1, 3, 5, 6, 7}
set_data1 = {1, 2, 3, 5, 6}
set_data.symmetric_difference_update(set_data1)
print(set_data)
# 运行结果
# {2, 7}
# 2)合集
set_data = {1, 3, 5, 6, 7}
set_data1 = {1, 2, 3, 5, 6}
set_data.update(set_data1)
print(set_data)
# 运行结果
# {1, 2, 3, 5, 6, 7}
# 3)交集
set_data = {1, 3, 5}
set_data1 = {1, 2, 3, 4}
set_data.intersection_update(set_data1)
print(set_data)
# 运行结果
# {1, 3}
添加一个元素
# 添加一个元素
set_data = {1, 3}
set_data.add(2)
print(set_data)
# 运行结果
# {1, 2, 3}
删除一个元素(使用多种方法)
pop
set_data = {1, 3, 4, 5, 6, 7}
data = set_data.pop()
print(set_data)
# 结果
# {3, 4, 5, 6, 7}
remove
如果元素是成员,则从集合中删除该元素。
set_data = {1, 3, 4, 5, 7, 8}
set_data.remove(3)
print(set_data)
# 运行结果
# 1, 4, 5, 7, 8}
discard
如果元素是成员,则从集合中删除该元素。
set_data = {1, 3, 5}
set_data.discard(1)
print(set_data)
# 运行结果
# {3, 5}
difference_update
从此集中删除另一组的所有元素。
set_data = {1, 3, 5}
set_data1 = {1, 3}
set_data.difference_update(set_data1)
print(set_data)
# 运行结果
# {5}
clear
从此集中删除所有元素
set_data = {1, 3, 65, 45654, 65464, 8994}
set_data.clear()
print(set_data)
# 运行结果
# set()
7.数据类型转换:
将浮点型,字符串转换成整型
int_var = int(1.5)
int_var1 = int("6464")
print(int_var, type(int_var))
print(int_var1, type(int_var1))
# 运行结果
# 1
# 6464
将整数,字符串转成浮点型
data1 = float(1)
data2 = float('1')
print(data1, type(data1))
print(data2, type(data2))
# 运行结果
# 1.0
# 1.0
将二进制,八进制,16进制转成10进制
data1 = int(0b100) data2 = int(0o100) data3 = int(0x100) print(data1, type(data1)) print(data2, type(data2)) print(data3, type(data3)) # 结果 # 4将10进制转换成,二进制,八进制,16进制# 64 # 256
data1 = bin(4) data2 = oct(64) data3 = hex(256) print(data1, type(data1)) print(data2, type(data2)) print(data3, type(data3)) # 结果 # 0b100 # 0o100 # 0x100将字符串转换为字节
data1 = bytes("按时间", encoding="UTF-8")
print(data1, type(data1))
# 结果
# b'xe6x8cx89xe6x97xb6xe9x97xb4'
将字节转换成字符串
data1 = str(b'xe6x8cx89xe6x97xb6xe9x97xb4', encoding="UTF-8") print(data1, type(data1)) # 结果 # 按时间将ascii码转换为字符串
data1 = chr(49) print(data1, type(data1)) # 结果 # 1将字符串转换成ascii码
data1 = ord(str('1'))
print(data1, type(data1))
# 结果
# 49



