1.列表
列表的数据项不需要具有相同的类型,创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可
1)创建列表
list = [] #空列表
list1 = ['a','b']
2)添加元素
在末尾添加元素
list1.append['c']
在末尾拼接另一个数组
list1.extend(['c','d'])
插入元素
list1.insert(1,'c')
3)删除元素
remove
list = ['a','c','d']
list.remove('a')
print(list)
输出:['a', 'd']
del
list = ['a','c','d']
del list[1]
print(list)
输出:['a', 'd']
pop
a = list.pop()
删除最后一个,并返回
3)列表截取
list = ['a','b','c','d','e']
sublist = list[1:3] #截取从1到3,左闭右开
print(sublist)
输出:['b','c']
sublist = list[1:] #截取从1到最后的列表
sublist = list[:3] #截取从开始到3的列表
4)脚本操作符
获取列表的长度
list = ['a','c','d']
a = len(list)
返回值:a = 3
list1 = ['a']
list2 = ['c']
list = list1 + list2
list的值['a','c']
'a' in ['a','b']
返回值:true
2.字典
dict = {key:value}
1)修改或者添加新值
dict['age'] = 20
key值存在则修改,不存在就会自动添加的键值对
2)删除字典元素
del
del dict['age']
删除key为age的键值对
del dict
删除字典,dict被销毁
clear()
dict.clear()
清空字典所有元素
copy()
a = {'a':'Ni','b':['shi','zhu']}
b = a.copy()
a['c'] = 'hello'
a输出:{'a':'Ni','b':['shi','zhu'],'c' = 'hello'}
b输出:{'a':'Ni','b':['shi','zhu']}
a['b'].append('ma')
a输出:{'a':'Ni','b':['shi','zhu','ma'],'c' = 'hello'}
b输出:{'a':'Ni','b':['shi','zhu','ma']}
不同于OC的浅拷贝,OC浅拷贝只是拷贝了对象的地址,还是同一个对象,多了一个新的指针指向
a和b是两个独立的对象,但他们的子对象还是指向统一的对象(都是对子对象的引用)
即:['shi','zhu'] 发生改变,a和b都会改变
3.元组
元组与列表类似,不同之处在于元组的元素不能修改(增、删、改)
元组使用小括号,列表使用方括号
1)创建元组
在小括号中添加元素,并使用逗号隔开即可
tup1 = ('physics', 'chemistry', 1997, 2000)
元组中只包含一个元素时,需要在元素后面添加逗号
tup2 = (2,)
2)访问元组数据
可以通过下标访问元组
print("tup1[0]: ", tup1[0])
- 元组组合
tup = tup1 + tup2
tup值: ('physics', 'chemistry', 1997, 2000,2)
4)销毁元组
del tup
tup 变量被销毁
除此之外,还可以进行截取,复制等操作
4.集合
集合是由不重复元素组成的无序的集
它的基本用法包括成员检测和消除重复元素
1)创建
可以使用大括号 { } 或者 set() 函数创建集合
注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
a = {'a','b','c'}
2)添加
add()
a.add('d')
a值:{'a','b','c','d'}
如果元素已存在,则不进行任何操作。
update()
参数可以是列表,元组,字典等
a.upate({1,3})
a值:{1,3,'a','b','c'}
注意:字典添加的元素是Key
3)移除元素
remove()
如果元素不存在,则会发生错误。
a.remove('a')
discard()
如果元素不存在,不会发生错误
a.discard('a')
pop()
pop 是删除集合的第一个元素(排序后的集合的第一个元素)
clear()
清空集合
4)frozenset()
不可变集合,不能进行增、删操作
参数:可以通过,列表,字典,元组创建