元祖和字典
元祖概述:
1、定义:元组是一种可以存储不同数据类型,且数据不可变的序列
2、创建普通元祖
语法格式:元组名 = tuple(序列);元组名 =(元素1,元素2,···)
3、元祖嵌套:元组名 = (元组1,元组2,···)
4、删除元组:del 元组名
5、遍历元组:enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为
一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中
for ind, val in enumerate(mtup):
如果start=1,则ind的值将会从1开始
for ind, val in enumerate(mtup, start=1):
6、元祖的特性:有序,不可变,嵌套,异构
字典概述:
1、定义: 字典是存储键值对的数据结构
2、创建字典:a、字典名 = {key1:value1, key2:value2, ...}
b、字典名 = dict(数据) 数据为变量赋值
c、字典名 = dict(数据) 数据为列表
d、字典名 = dict.fromkeys(key_seq, value)
3、获取字典的值:通过值对应的键来获取:变量名 = 字典名[key]
变量名 = 字典名.get(key)
变量名 = 字典名.get(key, default) # default为默认值
4、字典特性:a、无序:字典依靠键(key)获取值(value),不可依靠下标获取数据
b、可变:字典不仅可以取出数据,也可以增删改数据
c、异构:字典存储的数据类型也是可以不同的
d、可嵌套:字典存储value值也可以是字典
5、与列表元祖类似,字典中可嵌套字典
6、字典的删除方法有:pop(); clear(); del
字典同样是通过键删除对应的值:变量名 = 字典名.pop(key);删除指定数据,且返回删除
key对应的value,如果字典内没有指定的key对应的值,返回设定值,如果没有设定值就会报错
字典名.clear() ;删除字典内所有数据
del 字典名[key];del 字典名:删除指定数据,或者删除整个字典
7、添加:字典名[key] = 值
8、修改:字典名[key] = 新值
9、遍历:变量名 = 字典名.keys() ,遍历键
10、变量名 = 字典名. values() ,遍历值
11、变量名 = 字典名.items() ,遍历键值对
案例:
双色球案例,加入了注数
choice = 1
while True:
your_red = int(input('请输入你选择的第%d个红球数字:' % choice).strip())
if your_red in your_balls['红球']:
print('已经输入过%d,请重新输入' % your_red)
continue
else:
your_balls['红球'].append(your_red)
choice += 1
if choice >= 7:
break
# 存储选民蓝球
your_bule = int(input('请输入你选择的蓝球数字:'))
your_balls['蓝球'].append(your_bule)
# 存储选民注数
your_numbers = int(input('请输入你选择加注数:'))
your_balls['注数'] = your_numbers
# 存储选民一张票到所有票列表
your_choice.append(your_balls)
print(your_balls)