第三章 列表、元组和字典 - HongDad/falcon GitHub Wiki
- 序列与列表与元组的关系和创建
- 序列:一中包含多项数据的数据结构,按顺序排列,可通过索引来序列成员 列表是可变的,元组是不可变的 元组和列表的关系就是不可变和可变的关系 如何区分列表和元组? A:方括号是列表,圆括号是元组 B :列表用list()创建,元组用tuple()创建 注意:创建元组时,如果只有一个元素,在后面要加上,
- 创建列表和元组的两种方式 直接创建或者加上list(),tuple() 列表和元组可以互相转换,list(tuple())
- 列表和元组的简单使用
- 通过索引访问元素 前序访问正数,倒叙访问负数
- 子序列
- 序列运算 加法、乘法、in运算
- 序列相关函数与封包解包
- 最大值(max())、最小值(min())、长度(len()) 字符串之间比较时,先比较第一个字符串,若相同,再比较第二个字符串
- 序列封包解包 序列封包:将多个值赋给一个变量时,会自动将多个值封装成元组 序列解包:序列可被直接赋值个多个变量,会自动将每一个按顺序赋值给多个变量 注意:解包时,当变量的长度小于序列的长度时,可在变量前加上*代替
- 列表的用法及操作列表元素
- 添加、删除、替换元素 添加 append() 会将序列当成整体加入 extends() 会将序列拆开加入 insert(“”,index) 插入到指定位置 删除 del 变量名 [索引开始,索引结束,步长] 替换 直接指定位置替换
- 列表常用方法
- 字典
-
创建字典 直接创建,字典用{}表示 通过dict([("",""),("",""),("","")])创建 通过dict(''='',''='',''='')
-
操作字典key-value 对不存在的key-value赋值,就是添加 对已存在的key-value赋值,就是修改 del 某个key,就是删除 in、not in判断是否包含key
-
理解dict与list的关系
-
字典的常用方法 clear() 清空 get() 根据key得到value update() 对于已有的key修改,没有的添加
keys、values 、items pop、popitem、setdefault、fromkeys
-
利用字典格式化字符串
-
- 小节
- 创建列表,使用random、numpy
- 列表去重
#生成10个随机大写字符写入列表
import null as null
my_list = []
import random
for i in range(10):
n = random.randint(65,91)
my_list.append(chr(n))
print(my_list)
#2
my_list = [chr(random.randint(65,91)) for i in range(10)]
print(my_list)
from numpy import *
for i in random.randint(65, 90, [10,1]):
print(type(i))
print(my_list)
#列表去重
my_list = [random.randint(20,30) for i in range(15)]
print(my_list)
#普通遍历、判断
new_list = []
for y in my_list:
if y not in new_list:
new_list.append(y)
print(new_list)
#使用set集合
new_set_list = list(set(my_list))
print(new_set_list)
#使用itertools
import itertools
my_list.sort()
new_my_list = []
key_value = itertools.groupby(my_list)
for k,v in key_value:
new_my_list.append(k)
print(new_my_list)