05、python的基础-->字典的增、删、改、查
1、字典的增
dict = {'age':19,'name':'老王','hobby':'girl'}
dict['sex'] = 'boy' #没有键值对,直接添加
dict['age'] = '' #有键值对,覆盖值
dict.setdefault('job','boss') #无键值添加,有键值不覆盖
print(dict)
2、字典的删
dict = {'age':19,'name':'老王','hobby':'girl'}
dict.pop('name') #按键删除
print(dict.pop('name') ) #有返回值
print(dict.pop('wight','None') ) #无设置值会报错,可以随意设置返回值,一般用None
dict.popitem() #3.5 是随机删除,3.6 以上有序,默认删除最后,有返回值,元组-->删除的键值
dict.clear() # 清空字典键值
del dict['name'] # 删除字典键值,一般不用,无键会报错,可以直接删除字典
print(dict )
3、字典的改
dict['age'] = '' #有键值对,修改值
dict = {'age':19,'name':'老王','hobby':'girl'}
dict1 = {'name':'老王','sex':'male'}
dict1.update(dict) #把一个字典内的元素加到另一个字典,相同键不做修改,不同的增加
print(dict1)
4、字典的查
dict = {'age':19,'name':'老王','hobby':'girl'}
print(dict['name']) #直接打印对应keys的值,找不到keys会报错
print(dict.get('name')) #直接打印对应keys的值,找不到keys不会报错,显示None
print(dict.get('name1','查不到此键')) #有返回值
print(dict.keys()) #查键
print(dict.values()) #查值
print(dict.items()) #查组
for i in dict: #默认打印出键,跟for i in dict.keys()一样
print(i)
for i in dict.values(): #打印出值
print(i)
for i in dict.items(): #打印出组
print(i)
5、特殊应用
# 根据以下规则
a,b = 1,2 #输出 1 2
print(a,b)
a,b = [1,2] #输出 1 2
print(a,b)
a,b = [1,2],[3,4] #输出 [1, 2] [3, 4]
print(a,b)
# 衍生
for k,j in dict.items(): #打印出没有括号没有逗号分开的元素
print(k,j)
6、字典的嵌套
7、案例应用
--->案例1:将大于66的放到第一个keys中,将小于66的放到第二个keys中
li = [11,22,33,44,55,66,77,88,99,90]
dict = {'k1': [], 'k2': []}
for i in li:
if i == 66:
continue
if i < 66:
dict['k1'].append(i)
else:
dict['k2'].append(i)
print(dict)
--->案例2:输出商品列表,用户输入序号,显示用户选中商品
商品li=['手机','电脑','鼠标垫','游艇']
要求:1、页面显示 序号 + 商品名称,如:
1 手机
2 电脑
...
2、用户输入选择的商品序号,然后打印出商品名称
3、如果用户输入的商品序号有误,则提示输入有误,并重新输入
4、用户输入Q或者q,退出程序
li = ['手机', '电脑', '鼠标垫', '游艇']
for i in li:
print(li.index(i)+1, i) #使用format增加美观 print('{}\t{}'.format(li.index(i)+1, i))
while 1:
num = input('请输入你选择的商品:')
if num.upper() == 'Q':
break
if num.isdigit():
if int(num) <= len(li) and int(num) > 0:
print(li[int(num) - 1])
else:
print('你的输入有误,请重新输入')
else:
print('请输入数字')
05、python的基础-->字典的增、删、改、查的更多相关文章
- 好用的SQL TVP~~独家赠送[增-删-改-查]的例子
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- django ajax增 删 改 查
具于django ajax实现增 删 改 查功能 代码示例: 代码: urls.py from django.conf.urls import url from django.contrib impo ...
- iOS FMDB的使用(增,删,改,查,sqlite存取图片)
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...
- iOS sqlite3 的基本使用(增 删 改 查)
iOS sqlite3 的基本使用(增 删 改 查) 这篇博客不会讲述太多sql语言,目的重在实现sqlite3的一些基本操作. 例:增 删 改 查 如果想了解更多的sql语言可以利用强大的互联网. ...
- ADO.NET 增 删 改 查
ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...
- MVC EF 增 删 改 查
using System;using System.Collections.Generic;using System.Linq;using System.Web;//using System.Data ...
- python基础中的四大天王-增-删-改-查
列表-list-[] 输入内存储存容器 发生改变通常直接变化,让我们看看下面列子 增---默认在最后添加 #append()--括号中可以是数字,可以是字符串,可以是元祖,可以是集合,可以是字典 #l ...
- Django(十)模型:django模型类对数据库的:增/删/改/查、自关联、管理器、元选项(指定表名)
一.插入.更新和删除 调用一个模型类对象的save方法的时候就可以实现对模型类对应数据表的插入和更新. 调用一个模型类对象的delete方法的时候就可以实现对模型类对应数据表数据的删除. 二.自关联 ...
- 简单的php数据库操作类代码(增,删,改,查)
这几天准备重新学习,梳理一下知识体系,同时按照功能模块划分做一些东西.所以.mysql的操作成为第一个要点.我写了一个简单的mysql操作类,实现数据的简单的增删改查功能. 数据库操纵基本流程为: 1 ...
随机推荐
- spring boot 尚桂谷学习笔记05 ---Web
------web 开发登录功能------ 修改login.html文件:注意加粗部分为 msg 字符串不为空时候 才进行显示 <!DOCTYPE html> <!-- saved ...
- 【awk】 判断是不是纯ascii串
筛选出纯ascii串: awk '{ l = length($0); for (i = l; i > 0; i--) { if (substr($0,i,1) > "\177&q ...
- 读取hive文件并将数据导入hbase
package cn.tansun.bd.hbase; import java.io.IOException; import java.net.URI; import java.util.List; ...
- DNS 放大
DNS放大攻击是伪造一个DNS查询的报文,源地址改成想要攻击的IP.单个查询的包64字节,如果是ANY类型查询(或者DNSSEC记录),那么回复报文一般会大几十倍.当然,如果攻击者自己制造一个很大的T ...
- Python面试题之如何用Python来发送邮件?
python实现发送和接收邮件功能主要用到poplib和smtplib模块. poplib用于接收邮件,而smtplib负责发送邮件. 代码如下: 1 #! /usr/bin/env python 2 ...
- asciinema.org -Record Your Terminal Share it with no fuss
紀錄 Terminal 下指令的過程 http://asciinema.org/
- firmware
路由器固件分析题,首先要安装firmware-mod-kit 安装命令: linux> sudo apt-get install git build-essential zlib1g-dev l ...
- windows10图形化连接CentOS7
前提:CentOS已经安装图形化,安装教程可以百度 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release (Core) 安装 ...
- getopts的错误报告模式
- 转载 Struts2的配置 struts.xml Action详解
在学习struts的时候,我们一定要掌握struts2的工作原理.只有当我们明确了在struts2框架的内部架构的实现过程,在配置整个struts 的框架时,可以很好的进行逻辑上的配置.接下来我就先简 ...