day 5 - 2 字典(dict)练习
1. 有如下变量(tu 是个元祖),请实现要求的功能
tu = ("alex",[11,22,{"k1":'v1',"k2":["age","name"],"k3":(11,22,33)},44])
#1)讲述元祖的特性
子元素不可以被修改,子元素中的子元素可能被修改 #2)请问 tu 变量中的第一个元素 "alex" 是否可被修改?
不可以,是元祖的子元素 不可以被修改 #3)请问 tu 变量中的 "k2" 对应的值是什么类型?是否可以被修改?如果可以,请在
#其中添加一个元素 "seven"
print(type(tu[1][2]["k2"]))
可以
tu[1][2]["k2"].append('seven')
print(tu) #4)请问 tu 变量中的 "k3" 对应的值是什么类型?是否可以被修改?如果可以,请在
#其中添加一个元素 "seven"
print(type(tu[1][2]["k3"]))
不可以
2. 字典 dic,dic={'k1':"v1",'k2':"v2",'k3':[11,22,33]}
dic = {'k1':"v1",'k2':"v2",'k3':[11,22,33]}
#a. 循环打印输出所有 key
for i in dic.keys():
print(i) #b. 循环打印输出所有 value
for i in dic.values():
print(i) #c. 循环打印输出所有 key 和 value
for i in dic.items():
print(i) #d. 请在字典中添加一个键值对 "k4":"v4" 并输出
dic["k4"] = "v4"
print(dic) #e. 修改字典中 "k1" 为 "alex" 并输出
dic["k1"] = "alex"
print(dic) #f. 在字典 "k3" 中 追加一个元素 18 并输出
dic["k3"].append(18)
print(dic)
#g. 在字典 "k3" 对应的第一个值中插入元素 18 并输出
dic["k3"].insert(0,18)
print(dic)
3. 元素分类
有如下值 li=[11,22,33,44,55,66,77,88,99],将所有大于 66 的值保存至字典的第一个 key 中,将小于 66 的值保存至第二个 key 值中
即:{'k1':大于 66 的所有值列表,"k2":小于 66 的所有值列表}
li=[11,22,33,44,55,66,77,88,99]
dic={}
k1=[]
k2=[]
for i in li:
if i==66:continue
if(i>66):
k1.append(i)
else:
k2.append(i)
dic.setdefault("k1",k1)
dic.setdefault("k2",k2)
print(dic)
4.购物车
输出商品列表,用户输入序号,显示用户选中的商品
商品 li=["手机","电脑","鼠标","游艇"]
要求:
1)页面显示 序号 + 商品名称
如:
1 手机
2 电脑
2)用户输入选择的商品序号,然后打印商品名称
3)如果用户输入的商品序号有误,提示错误并重新输入
4)用户输入 Q 或 q,退出程序
while 1:
li=["手机","电脑","鼠标","游艇"]
for i in li:
print("{}\t\t{}".format(li.index(i)+1,i))
num = input("请输入商品序号/输入 Q\q 退出:")
if num.isdigit():
num = int(num)
if num > 0 and num <= len(li):
print(li[num-1])
else:print("请输入有效数字")
elif num.upper() == 'Q':
break
else:print('请输入数字')
day 5 - 2 字典(dict)练习的更多相关文章
- python中几个常见的黑盒子之“字典dict” 与 “集合set”
这里说到"字典dict" 和 "集合set"类型,首先,先了解一下,对于python来说,标准散列机制是有hash函数提供的,对于调用一个__hash__方法: ...
- Python中的元组(tuple)、列表(list)、字典(dict)
-------------------------------更新中-------------------------------------- 元组(tuple): 元组常用小括号表示,即:(),元 ...
- python中字典dict的操作
字典可存储任意类型的对象,由键和值(key - value)组成.字典也叫关联数组或哈希表. dict = {' , 'C' : [1 , 2 , 3] } dict['A'] = 007 # 修改字 ...
- python中的字典(dict),列表(list),元组(tuple)
一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...
- Python - 字典(dict) 详解 及 代码
字典(dict) 详解 及 代码 本文地址: http://blog.csdn.net/caroline_wendy/article/details/17291329 字典(dict)是表示映射的数据 ...
- Redis的字典(dict)rehash过程源代码解析
Redis的内存存储结构是个大的字典存储,也就是我们通常说的哈希表.Redis小到能够存储几万记录的CACHE,大到能够存储几千万甚至上亿的记录(看内存而定),这充分说明Redis作为缓冲的强大.Re ...
- python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
- 自学Python2.4-基本数据类型-字典dict(objct)
Python dict方法总结 一.字典介绍 1.字典概述 ①字典是python中唯一内建的映射类型.又称关联数组或散列②映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关 ...
- Python字典(dict)使用技巧
字典dict是Python中使用频率非常高的数据结构,关于它的使用,也有许多的小技巧,掌握这些小技巧会让你高效地的使用dict,也会让你的代码更简洁. 1.默认值 假设name_for_userid存 ...
- python基础2--数据结构(列表List、元组Tuple、字典Dict)
1.Print函数中文编码问题 print中的编码:# -*- coding: utf-8 -*- 注:此处的#代表的是配置信息 print中的换行符,与C语言相同,为"\n" 2 ...
随机推荐
- golang与vscode的安装与配置
一.golang的下载与安装 以下都是win10的安装与配置 go语言官方下载地址:https://golang.org/dl/ 找到适合你系统的版本下载 傻瓜式安装开始... 二.golang环境变 ...
- 四种不同的SNP calling算法call低碱基覆盖度测序数据时,SNVs数量的比较(Comparing a few SNP calling algorithms using low-coverage sequencing data)
摘要:如果不设置任何过滤标准的话,SOAPsnp会call出更多的SNVs:AtlasSNP2算法比较严格,因此call出来的SNVs数量是最少的,GATK 和 SAMtools call出来的数量位 ...
- Serlect的笔记二(request 、 ersponse)
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象.和代表响应的response对象. 下面这两个对象的基本理解: 一.HttpServletRequ ...
- (去重 sort)nyoj8-一种排序
8-一种排序 内存限制:64MB 时间限制:3000ms 特判: No通过数:235 提交数:749 难度:3 题目描述: 现在要求按照以下方式排序(默认排序都是从小到大) 现在有很多长方形,每一个长 ...
- script weixin app / weixin xiao chen xu
s 开发人员: 1.设置权限程序员管理人员-管理体验者-配置测试人员的真实微信号2.微信小程序的后台-上传体验版代码-生成体验码二维码测试人员: 1.你的台式机/笔记本申请内外网.有usb权限2.有W ...
- js和jQuery中的事件绑定与普通事件
普通事件,是指直接对元素进行事件注册,然后触发 而事件绑定是将事件注册到元素上 两者区别就是在于普通事件不可以重复添加多个事件,若添加也会覆盖,只会触发其中一个事件(最后注册的那个) 而事件绑定是可以 ...
- angular,vue,react的基本语法—插值表达式,渲染数据,响应式数据
基本语法: 1.插值表达式: vue:{{}} react:{} angular:{{}} 2.渲染数据 vue js: export default{ data(){ return{ msg:&qu ...
- golang byte与rune区别
先看代码 package main import ( "fmt" ) func main() { var a = "hello world" var b = & ...
- HDU 1023(卡特兰数 数学)
题意是求一列连续升序的数经过一个栈之后能变成的不同顺序的数目. 开始时依然摸不着头脑,借鉴了别人的博客之后,才知道这是卡特兰数,卡特兰数的计算公式是:a( n ) = ( ( 4*n-2 ) / ...
- Spring Bean的ref属性和IoC注入集合
这是一个Demo 1.Phone.java package com.cn.pojo; public class Phone { private String name; private double ...