# ---------------列表 list
list1 = [16, 334, 214, 632, 7, 23, 7, 4, 323, 12]
# append() 追加数据
# insert() 插入数据
# pop() 移出数据
# clear() 删除列表所有元素
# copy() 拷贝列表
# count() 获取某元素出现的次数
# extend 扩展列表,把
# index() 获取某个元素的索引
# remove() 移除列表中某个元素
# reverse()反向排序
# sort() 排序(升序、降序)
# 1.extend()传入参数
# 可迭代对象(可以用for循环遍历的对象) 元组、列表、字典、字符串
# list1.extend('hello')
print(list1)
# 2.index()获取某个元素的索引,如果元素不存在会抛出异常错误:
# ValueError: XXX is not in list
# 如果列表中有相同元素,返回第一个查找元素的索引
# 2.1.object 要查找的元素
# 2.2.开始查找位置
# 2.3.结束查找位置
result = list1.index(7, 5, 100)
print(result)
# 3.remove() 移除列表中某个元素
# 3.1 要删除的元素,若元素不存在,会抛出异常错误:
# ValueError: list.remove(x): x not in list
# 若列表中有相同元素,删除时只删除第一个匹配到的元素
list1.remove(7)
print(list1)
# 4.sort排序 默认升序排序
# 4.1 reverse=True 降序排序
list1.sort(reverse=True)
print(list1)
# 5.reverse() 反向排序
list1.reverse()
print(list1)
# 切片特性
# 开始位置: 结束位置 包含开始位置 不包含结束位置
# 切片之后,返回的是一个新列表,列表中是切出来的元素
# 如果开始位置 > 结束位置,例如:[6: 2],返回一个空列表
result = list1[4: -3]
print(result)
# 索引填负值,从后向前取,最后一个元素索引为-1
result = list1[-1]
print(result)
# 从某个位置开始切片,直到结束位置
result = list1[2:]
print(result)
# 从开头位置,到指定位置
result = list1[: 6]
print(result)
# [::n] 每间隔n个元素切一次
result = list1[::3]
print(result)
# --------------------字典 dict
# clear() 移除字典中所有数据
# copy() 拷贝字典
# fromkeys()
# get() 根据key取出值,若key不存在,返回默认值
# items() 获取字典中所有的key,value,返回[(key,value),]
# keys() 获取字典所有的key
# pop() 根据key移出值
# popitem() 移出字典中某个key和值,返回(key,value)
# setdefault()
# update()
# values() 获取字典所有的value
dict1 = {'name': '张三', 'age': 22}
# 1.fromkeys() 根据一些key,添加到字典中,并返回一个新的字典,若不指定值,默认为None
# 1.1 存放key的可迭代对象
# 1.2 key对应的值,指定的值
keys = ['phone', 'sex']
dict1 = dict1.fromkeys(keys, 110)
print(dict1)
# 2.setdefault()
# 2.1 要设置值的key
# 2.2 指定的默认值,若不指定,默认为None
# 等同于 dict1['name'] = '张三'
dict1.setdefault('name', '张三')
print(dict1)
# 3.update() 若A中有B中的key,将数据更新为B中key对应的值,若没有则添加
dict2 = {'age': 22, 'phone': 120}
dict1.update(dict2)
print(dict1)
# -------------------元组 tuple
# 元组是一个不可变列表
# 1.声明元组
tuple1 = (1, 2, 3, 4)
# 根据索引取数据
s = tuple1[0]
print(s)
# 元组中的数据不可以进行修改、删除、添加
# TypeError: 'tuple' object does not support item
assignment
# tuple1[0] = 123
# TypeError: 'tuple' object doesn't support item
deletion
# del tuple1[0]
# 遍历元组
for x in tuple1:
print(x)
# 1.count() 函数 统计元素出现次数
result = tuple1.count(1)
print(result)
# 2.index() 函数 获取指定元素的索引
result = tuple1.index(1)
print(result)
# ---------------------集合 set
# 集合中没有重复的数据,集合一般用来做去重
# set() 空集合
# set([1,2,3,4])
set1 = set([1, 2, 3, 4, 4, 3, 2, 1])
print(set1)
# add() 添加数据
set1.add(11)
print(set1)
# remove() 删除数据
set1.remove(11)
print(set1)
# 遍历
for x in set1:
print(x)
set2 = set([5, 3, 7, 1])
# set
# difference() 求差集
set3 = set1 - set2
print(set3)
# str 字符串类型