import random import time start_running = time.time() # 列表相关操作: # 创建列表的方式: # 1.字面量语法 list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9] print(list1) # 2.构造器语法 list2 = list(range(1, 10)) print(list2) # 3.生成式(推导式)语法 ※推荐 list3 = [i ** 2 for i in range(1, 10)] print(list3) # 遍历列表中的元素 # 1. 读写循环 for i in range(len(list1)): print(list1[i]) # 2. 只读循环 for i in list2: print(i) # 3. 带序号读 ※推荐格式化输出 for i, x in enumerate(list3): print(i + 1, x) # 和列表相关的运算 # 1.重复运算 print('重复运算:', list1 * 2) # 2.成员运算 print('成员运算:', 9 in list2) # 索引和切片 # 1.正向索引:0~n-1 / print('\n正向索引:', end='') for i in range(len(list2)): print(list2[i], end=' ') # 负向索引:-n~-1 print('\n负向索引:', end='') for i in range(len(list2)): print(list2[-(i + 1)], end=' ') print('\n', '- ' * 20) # 合并 list4 = list1 + list2 list4 += list3 # 比较 是否元素相同 print(list2 == list1) # 比大小 主要对比第一个元素,如果是字符串 就对比对一个字母的编码。ord, list5 = [9, 8, 7, 6, 5, 4, 3, 2] print(f'答案: {list5 > list4} : list5 ({list5}) > list4 ({list4}) : ') # 汉字编码范围:0x4e00,0x9fa6 。 # ord()查看字符对应的编码。 # chr()将编码处理成相对应的字符。 # hex()将编码编程 编程十六进制 # 列表增加元素 list5.append(1) # 追加 list5.insert(0, 10) # 插入 list5.insert(0, 10) # 插入 print('list5:', list5) # 列表删除元素 list5.pop() # 删除追后一个元素 #可以赋值给其他元素 list5.pop(3) # 删除指定位置元素 del list5[4] # 面向对象删除元素 list5.remove(2) # 删除第一个列表中第一个指定元素 while 2 in list4: list4.remove(2) # 删除list4所有的 元素2 print('list5:', list5) list4.clear() # 清空列表元素 print('list4:', list4) # 列表查找 if 3 in list5: # 判断避免出现崩溃 print(f'元素在第 {list5.index(3)} 个。') # 元素的位置 else: print(f'元素不在列表之中。') if 10 in list5[1:]: # 切片查找 print(f'元素在第 {list5.index(10, 1)} 个。') # 切片查找指定区域内数据 else: print(f'元素不在列表之中。') # 列表中出现的次数 print(f'元素 10 在列表中出现 {list5.count(10)} 次。') print('\n', '- ' * 20) print('list3列表内容:',list3) #排序 print('list3倒序切片:',list3[::-1]) list3.reverse() print('list3倒序方法:',list3) #排序 list3.sort() #reverse 正序倒叙 key 改变排序形式 如:key=int ;key=str print('list3正序排序方法:',list3) list3.sort(reverse=True) print('list3倒叙排序方法:',list3) #列表合并 list3.extend(list5) print('list3扩展合并方法:',list3) #将另外一个列表合并进来 end_running = time.time() print(f'程序运行时间是 {end_running - start_running :.3f} 秒') print('- ' * 20,'#列表随机抽样') #列表随机抽样 # sample 函数可以对元素进行无放回抽样 print(random.sample(list3,k=5)) # 函数可以对元素进行有放回抽样 print(random.choices(list3,k=5)) # 函数可以对元素进行单个抽样 print(random.choice(list3)) # 函数可以对列表进行打乱 random.shuffle(list3) print(list3)