文字目录
python 中的列表list,元组tuple
ipython、timeit
测试函数性能、耗时
pip install ipython
list[] 列表
列表,可以储存 任意数据类型,通常存【同一类】
列表中的每一个数据,叫元素
列表有(下标),是有序的列表
列表可以增删改查
[元素1,元素2,元素3,]
list 列表创建
# [数据, 数据, 数据]
# 创建一个列表 列表中可以放任意数据类型 ,但是通常列表放同类型的数据
# my_list = [10, 20, 30,"你好", 10.5, True]
my_list = [1, 5, 7, 9]
print(type(my_list)) # list
print(my_list)
my_list1 = list()
print(type(my_list1))
print(my_list1)
list 列表下标
# 重点
my_list = ["zhangsan", "lisi", "wangwu"] # list 列表
print(my_list)
# 有序的集合 下标 0开始的 0 1 2 3....
# 取值的语法 列表[下标]
print(my_list[0])
print(my_list[1])
print(my_list[2])
# 下标是从0 开始的 ,列表[下标]
list_num = [1, 4, 6, 8, 9, 10, 13, 30]
print(list_num[3])
print(list_num[6])
list 列表遍历
# 重点
list_num = [1, 4, 6, 8, 9, 10, 13, 30]
# for 内部的变量 in 列表
for n in list_num:
print(n)
# while 实现 遍历 列表中的内容
# i = 0
# while i <= 7:
# print(list_num[i]) # list_num[0] list_num[1] 。。。。。
# i += 1
list 增
my_list = [2, 4, 6, 7, 9]
print(my_list)
# 语法 列表.append(数据) 末尾追加一个元素
my_list.append(10) # 重点
# 添加多个数据 列表.extend(迭代数据) 添加多个元素
my_list.extend([20,30,40])
# 在指定下标位置插入数据 列表.insert(下标, 数据)
my_list.insert(1, 99)
print(my_list)
list 删
my_list = [2, 4, 6, 7, 9, 4]
# 列表.remove(数据) 从左向右找, 移除一个
# my_list.remove(4) # 重点
# my_list.pop()
# my_list.pop(2) # 指定下标对应的那个元素
# my_list.clear() # 清空列表
# del 列表[下标] 不推荐使用的
del my_list[3]
print(my_list)
list 改
my_list = [1, 2, 3, 4, 5, 6]
# 列表[下标] = 数据 修改
# my_list[9] = 10 报错 下标超出范围 报错
my_list[1] = 20
print(my_list)
list 查
my_list = [1, 2, 3, 4, 5, 6]
print(my_list[0])
print(my_list[2]) # 重点
# 列表的长度 len(列表)
length = len(my_list)
print(length)
# 6元素对应的下标 列表.index(元素)
ind = my_list.index(6) # 下标
print(ind)
my_list1 = [3, 1, 4, 7, 2]
# 排序 列表.sort()
# my_list1.sort() # 默认是升序
# my_list1.sort(reverse=False) # 升序 reverse=False 省略
my_list1.sort(reverse=True)
print(my_list1)
list 列表嵌套
# 列表的嵌套 列表中的元素 还是一个列表
# 重点
my_list = [[2, 3],
[4, 5],
[7, 8, 9, 0],
[2, 4, 5, 6, 7, 8]
]
# for 变量 in 数据 遍历列表 得到列表中的每一个元素
for k in my_list:
print(k)
tuple() 元组
元组不能修改里面的数据
元组,用()
元组,储存一组数据(1,2,3)
元组,(10) ==int
元组,(10,)==tuple
元组有(下标),是有序的列表
元组中的每一个数据,叫元素
tuple 元组创建
# 元组的方法
my_tuple = (10,) # tuple 如果只有一个元素 必须用逗号隔开
print(type(my_tuple))
my_tuple1 = tuple()
print(type(my_tuple1))
tuple 元组查
my_tuple = (3, 4, 5, 6)
# 元组[下标]
print(my_tuple[0])
print(my_tuple[1])
print(my_tuple[3])
# 修改 不能改
# my_tuple[0] = 30
tuple 元组遍历
my_tuple = (3, 4, 5, 6)
# for 内部使用的变量 in 元组:
for i in my_tuple:
print(i)
# if 数据 in 元组 # 数据是否在元组中
if 2 in my_tuple:
print("在")
else:
print("不在")
tuple 元组长度
# len(元组) 长度
my_tuple = (1, 3, 2, 3, 4, 5, 6, 3, 4, 3)
length = len(my_tuple)
print(length)
# 列表.count(数据)
c = my_tuple.count(3)
print("出现的次数{}".format(c))
tuple 元组拆包
# 拆包 有几个值,就用几个变量拆
a, b, c = (3, 4, 5)
print(a)
print(b)
print(c)
tuple 元组应用
# 应用场景
name = "张三"
age = 18
print("我的姓名是%s 年龄是%d" % (name, age))
# [(),(),(),()] 后期的应用 列表中是元组
my_list = [("110","123456"), ("120","123456"), ("119", "123456")]
for t in my_list:
print(t)
tuple 元组和列表直接的转换
# 了解 通常不要改
# float() 浮点型 int() 整数 bool() 布尔型
# tuple(数据/变量) 转换为元组
my_tuple = (2, 3, 4)
my_list = list(my_tuple)
my_list[0] = 20
print(my_list)
# list() 转换为列表
my_tuple = tuple(my_list)
print(my_tuple)
统计数据
from collections import Counter
List =[4, 9, 10, 6, 4, 6, 5, 1, 5, 8, 6, 10, 4, 10, 7, 4, 9, 3, 3, 4, 6]
Strlist=['A','B','B','C','C','C','D','D','D','D']
res = Counter(List)
print(res)
print(Counter(res).most_common(1))
res=Counter(Strlist)
print(res)