课堂笔记
(1)列表,集合,元组,深、浅拷贝
# 1.数据类型的剩余的内置方法
# 2.字符编码
# 3.文件处理
# 1.1列表类型
list1=[‘tank‘,18,‘male‘,3.0,9,‘广东‘,‘tank‘,[1,2]]
list1.insert(2,‘oldboy‘)
print(list1)
# count()查看某个值的个数
print(list1.count(‘tank‘))
# index()查看值的索引
print(list1.index(‘广东‘),‘---广东‘)
list2=list1.copy()
print(list2,‘添加值前‘)
# copy(),是属于把list1中的内存地址拷贝出来,然后会在链表中新建一个内存地址,放入其中
# 下面是赋值,是把list1的内存地址给了list3,也就是说list3是指向list1的内存地址
list3=list1
print(list3,‘添加值前‘)
list1.append(‘jason‘)
print(list2,‘添加值后‘)
print(list3,‘后‘)
# copy()属于浅拷贝:list1的列表中外层值改变对其不影响
# 但是对list1中可变类型进行修改则会随之改变值
list1[8].append(‘tank‘)
print(list2)
print(list3)
# 深拷贝,把list1中的值完全拷贝到一个新的地址
# 进而与list1完全隔离开
from copy import deepcopy
list4=deepcopy(list1)
print(list4)
# extend合并???????以下的为什么不能反转后赋值给另一个列表???
list5=[1,2,3]
list6=[4,5,6]
list5 .extend(list6)
print(list5)
# reverse()反转
# 列表反转之后还是列表
# 元组与列表是非常相似的,区别在于元组的元素值不能修改,元组是放在括号里的
# reverse只是对自己本身进行升降变化,并不会有任何返回值
list5.reverse()
print(list5)
# sort()升序
list8=[1,3,5,8,10,2,4,6]
list8.sort()
print(list8)
# 降序
list8.sort(reverse=True)
print(list8)
# 1.2字典的内置方法
# 1.按照key取/存值
dict1={‘name‘:‘lhhh‘,‘age‘:‘18‘,‘sex‘:‘male‘,‘school‘:‘ahpu‘}
# 根据key取学校的值
#print(dict1[‘school‘])????有问题
print (dict1.get(‘school‘,‘华南理工大学‘))
print (dict1.get(‘sal‘,‘该结果不存在‘))
# 成员运算
print(‘name‘in dict1)
print(‘sal‘in dict1)
#删除
del dict1[‘name‘]
print(dict1)
#POP()
age=dict1.pop(‘age‘)
print(dict1)
print(age)
dict1.popitem()
print(dict1)
#字典是无序的,是随机删除的,子不过目前还是在小计数池里
#key,values,items
print(dict1.keys())
print(dict1.values())
print(dict1.items())
# 键值对
#循环
for key in dict1:
print(key)
# update()
print(dict1)
dict2={"work":"student"}
dict1.update(dict2)
print(dict1)
# 1.3元组类型
# 在小括号内,以逗号隔开存放多个值
# 注意是不可变类型,对元组进行修改内存地址就不是原来的地址了
# 因为不可以修改所以在最开始就需要赋值
tuple1=(1,2,3)
#