python中字典的输出序列_python3:序列_字典(常用基础知识)

#字典:

'''字典:无序的、可变的序列,也称关联数组,或散列表

①格式{键:值}

②通过键读取元素

③字典是任意对象的无序集合

④字典可任意嵌套,如元素可以为列表、字典、列表的列表等

⑤字典的键必须是唯一的。不可重复,如果重复了,则已最后的键对应的值为准。

⑥字典中的键是不可变的,即键可以添加,不可以修改。'''

#字典有很多继承序列的内容如下:#序列索引从0开始,从最后起则索引为-1

#空字典

print('空字典1:',{},"空字典2:",dict())

a= {'4':20,'1':35,'6':30,'5':25}

c= {'c1键':"c1",'c2键':"c2",'c3键':"c3"}

b= {'4':'小一','5':'小二','6':'小三'}

aa= {range(1,11,2)}print(aa)print(a['1']) #输出'a1键'对应的值

'''python3中字典合并的几个方法如下。注意,合并的字典中对应的键类型应该一致,

否则如果键值有的是字符串,有的是数字,则提示:TypeError: keyword arguments must be strings'''

#字典的合并方法1

print('字典的合并方法1:',dict(a, **b))#字典的合并方法2

ab =a.copy()

ab.update(b)print('字典的合并方法2:',ab)#字典的合并方法3

ab =dict()

ab.update(a)

ab.update(b)print('字典的合并方法3:',ab)#检查字典成员

print('小三' in b) #in 在,not in 不在,结果:False,因为默认检查的是字典的键,而不是值

print('6' in b) #in 在,not in 不在,结果:True

print('小三' in b.values()) #in 在,not in 不在,结果:True(可以用值去判断)

#序列长度、最大值、最小值;%d数字替代符,n\换行符

print("序列长度:%d\n序列最大值:%r\n序列最小值:%r" %(len(a),max(a),min(a))) #默认比较的是键值

print("序列长度:%d\n序列最大值:%r\n序列最小值:%r" %(len(a),max(a.values()),min(a.values()))) #比较的是字典的值

print(dict(a)) #序列转为字典

print(str(a)) #序列转为字符串

print(sum(a.values())) #序列元素+

#-------------------字典-------------------------#除了对元素的顺序和内容不可添加、修改、删除外,字典有很多同列表一样的功能#遍历字典

print('遍历字典每项键方法1:')for item ina:print(item)print('遍历字典每项键方法2:')for item ina.keys():print(item)print('遍历字典每项值方法:')for item ina.values():print(item)print('遍历字典每项键和值方法:')for item ina.items():print(item)#将a分两列输出 笨方法

print('将a的值分两列输出,笨方法')for item ina.items():for index initem[0]:if int(index)%2 ==0:print(item[1],'\t\t',end='') #\t:横向空出一个制表符的位置;end='':接下来输出的内容不要换行显示,即:index 0不换行,1换行,2不换行,3换行

else:print(item[1])#将a分两列输出 简易方法

print('将a的值分两列输出,简易方法')for index,item ina.items():if int(index)%2 ==0:print(item,'\t\t',end='') #\t:横向空出一个制表符的位置;end='':接下来输出的内容不要换行显示,即:index 0不换行,1换行,2不换行,3换行

else:print(item)

shuzi= (128,512,309)

daihao= ['SY','JX','JN']

jiancheng= ['SY','JX','JN','SP','TX']

xingzuo= ['双鱼','巨蟹','金牛','水瓶','天蝎']#创建字典

di10 = dict.fromkeys(shuzi) #key为shuzi,value为空的字典

di11 = dict(zip(shuzi,daihao)) #生成字典

di12 = dict(zip(jiancheng,xingzuo)) #生成字典,注意,如果想让一个作为key的内容不可为列表,因为列表是可变的,必须为字典等不可变得内容#生成字典,注意,如果想让一个序列作为key,那么这个序列不可以是列表,因为列表是可变的,提示错误:TypeError: unhashable type: 'list'#di3 = {jiancheng:xingzuo}

print('di11:',di11)print('di12:',di12)print('返回删除的指定的键',di11.pop(309))print('返回删除的随意的键和值的信息',di11.popitem())

di11.clear()#清空字典

print(di11)print("如果指定的键存在,则返回该键的值,方法1:",di12['JN'])print("如果指定的键存在,则返回该键的值,方法1:",di12['SY'] if 'SY' in di12 else "没有这个简称啦~")print("如果指定的键存在,则返回该键的值,方法1:",di12['SY'] if 'SY1' in di12 else "没有这个简称啦~")print("如果指定的键存在,则返回该键的值,方法2:",di12.get('JX',"哟,您老的记忆力真好,可惜没有啦~"))print("如果指定的键存在,则返回该键的值,方法2:",di12.get('JX2',"哟,您老的记忆力真好,可惜没有啦~"))

dd1= dict(zip(shuzi,daihao)) #生成:数字、代号字典

dd2 = dict(zip(jiancheng,xingzuo)) #生成:代号、星座字典#返回128对应的代号和星座

print('128对应的代号是:',dd1.get(128),'\n128对应的星座是:',dd2.get(dd1.get(128)))

dd1[603] = 'M'#添加字典元素

dd1[309] = 'P'#修改字典元素

del dd1[309] #删除字典元素

print(dd1)#字典推导式:(用列表创建的表达式依然可成功创建,******注意:记得加上dict()******)、、

dd11= {i:j for i,j in zip(shuzi,daihao)} #用推导式生成

print(dd11)#生成指定范围的数值字典

importrandom

d= {i:random.randint(11,20)*2 for i in range(1,7)} #random.randint(30,90)*2:元素表达式,i:针对后面range的循环变量

print('d:',d)#生成指定需求的字典,如d的5折

e = {i:int(x*0.5) for i,x in zip(range(1,len(d)),d)} #x*0.5:元素表达式;x:d中的元素,i的长度为d的长度

print('e:',e)#生成符合条件的字典,如f字典需要0.5的d元素,且0.5d元素依然为偶数

f = {i:int(x*0.5) for i,x in zip(range(1,len(list(int(x*0.5) for x in d))),d) if int(x*0.5)%2==0}#x*0.5:元素表达式;x:d中的元素 i的长度为符合条件的列表的长度,也可以写为元组 len(tuple(int(x*0.5) for x in d))

print('f:',f)#创建数字字典

ff = {range(1,13,3)}print(ff)#二维字典#使用推导式创建二维字典(用列表创建的表达式依然可成功创建)

g ={i:[random.randint(3,8) for j in range(3) ] for i in range(1,4)}print(g)print(g[1][2]) #key1对应的值中的第2个下标中的值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/500901.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jenkins 集成java搅拌_如何将Gauge与Jenkins集成

我对Gauge测试工具有点熟悉,现在我正在通过Jenkins执行它 .首先:我在"Execute Windows Batch Command"字段中设置 gauge --version . 这是输出:Started by user anonymousBuilding in workspace C:\jenkins\workspace\Run_Gauge_Te…

大学生python实验心得体会_大学生实训心得体会3篇

转眼间为期两个星期的实训就结束了,但是安利公司的物流配送、黄埔港、益邦物流公司、南沙港以及学校里面的航海模拟实验中心、轮机实训实验楼这些实训过程仍历历在目。以下是小编整理的大学生实训心得体会,欢迎阅读。大学生实训心得体会1通过实训中心老师…

大白菜pe解锁bitlocker_微PE工具箱 v2.1 官方版,最好用的 Win10PE 系统

微PE工具箱 v2.1 – 最好用的WinPE装机维护工具!WinPE工具箱,装机维护最得力的助手,最后救命稻草。化繁为简,小材大用,一键安装,极速启动。微PE工具箱,最好用的PE工具箱,没有之一。无…

mysql5.6 pt-query-digest_pt-query-digest安装及分析

slow log 设置:cat my.cnf# For advice on how to change settings please see# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html[mysqld]#skip-grant-tables# Remove leading # and set to the amount of RAM for the most important …

mysql的执行效率_数据库执行效率的对比测试

今天看了一篇很有意思的文章,对比数据库和普通编程语言的效率测试,测试的语言分别是mysql的存储过程,oracle plsql和perl.测试机器是同一台机器上,测试标准是计算100万次的cos函数oracle代码create or replace procedure oraclesp…

linux修改python版本修改哪个配置文件_linux安装python修改默认python版本方法

linux默认是安装了python,默认是安装python2.6.6,可能安装的版本是不能符合我们需要的python要求的。我们需要重新安装python的版本,今天演示一下安装python3首先下载一个 wget 文件的地址 执行命令进行下载下载完成以后进行解压&#xff…

java算法的递归问题设计_java算法-递归算法思想

递归算法是跟常见的算法思想。使用递归算法,往往可以简化代码编写,提高程序的可读性。但是,不适合的递归往往导致程序的执行效率变低。一、递归算法基本思想递归算法即在程序中不断反复调用自身来叨叨求解问题的方法。此处的重点是调用自身&a…

delstr函数python_Python Day26:多态、封装、内置函数:__str__、__del__、反射(反省)、动态导入模块...

## 多态pythonOOP中标准解释:多个不同类型对象,可以响应同一个方法,并产生不同结果,即为多态多态好处:只要知道基类使用方法即可,不需要关心具体哪一个类的对象实现的,以不变应万变,提高灵活性/扩展性多态,一般都需要一个管理多态的方法,方法的函数就是类的对象,在方法中通过点…

java8用什么tomcat_Tomcat8+JDK8安装与配置

一,系统配置1.操作系统:win10 64位2.tomcat版本:Tomcat8 64位3.Java版本:JDK8 64位二,软件下载下载到本地后直接打开安装,修改存储目录,如图:2.2 Tomcat8下载,官网地址&…

逻辑回归python正则化 选择参数_吴恩达机器学习笔记(三)——正则化(Regularization)...

1.过拟合的问题(Over-fitting)如果我们有非常多的特征,我们通过学习得到的假设可能能够非常好地适应训练集(代价函数可能几乎为0),但是可能会不能推广到新的数据。(1)下图是一个回归问题的例子:第一个模型是一个线性模型,欠拟合&a…

Java简单记事本设计实验报告_基于JAVA的记事本设计报告.doc

基于JAVA的记事本设计报告华北科技学院计算机系综合性实验报告PAGE第 PAGE 11 页XX学校计算机系综合性实验实 验 报 告课程名称 Java程序设计实验学期 至 学年 第 学期学生所在系部 计算机系年级 专业班级学生姓名 学号任课教师实验成绩计算机系制《 Java程序设计》课程综合性实…

谷歌离开游览器不触发_谷歌游览器

谷歌浏览器不错,可保存不同的账户,互相不干扰。有2个账号,工作账号和个人账号,泾渭分明,不会打架,管理账号。总经理管理公司人员,厂长管理工人,业务员要管理自己账号,管理…

java scanner nextlin_java – Scanner nextLine()偶尔会跳过输入

让我猜一下 – 你没有显示使用上面尝试获取lastName的扫描器的代码.在那次尝试中,你没有处理行尾令牌,所以它是悬空的,只是被你试图获取lastName的nextLine()调用吞噬.例如,如果你有这个:Scanner keyboard new Scanner(System.in);System.out.print("Enter a …

python office库_python库编程.os平台.office平台

1.库安装Python库 PyPI – Python Package Index :https://pypi.python.org/(1) Python库的自定义安装:找到库所在网站,根据指示下载安装安装numpy库库所在网站:http://www.numpy.org/下载地址:http://sourceforge.ne…

java编译系统资源不足_Ant编译项目资源不足

今天用ant编译项目出现 [javac] 系统资源不足。的错误,如下Buildfile: build.xml-compile:[javac] Compiling 919 source files to E:\DSHR\dshr\WebContent\WEB-INF\classes[javac][javac][javac] 系统资源不足。[javac] 有关详细信息,请参阅以下堆栈追…

java线程三部分_java 多线程三

注意到 java 多线程一 中 MyThread2 运行结果出现0、-1,那是因为在操作共享数据时没有加锁导致。加锁的方式:1、同步方法2、同步代码块3、锁读过 java.util.concurrent 集合源码就知道:HashMap:public V put(K key, V value) {...}Hashtable:…

python简述定义函数的规则_Python的函数定义

有经验的程序员往往将功能较为独立、且可以被重复使用的代码块封装成函数,可以有效提高代码的模块化、解耦性和重复利用率。我们前面用到的print()函数就是Python的内建函数,我们也可以根据Python给我们提供的规则进行自定义函数。这里我们用PyCharm来进…

jdk中java_怎样使用JavaJDK中Java?

什么是UDP协议 UDP协议的全称是用户数据报,在网络中它与TCP协议一样用于处理数据包。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据报分组、组装和不能对数据包的排序的缺点,也就是说,当报文发…

python中table表结构_python中的简易表格prettytable

安装:pip install PrettyTable普通表格from prettytable import PrettyTabletable PrettyTable([编号,云编号,名称,IP地址])table.add_row([1,server01,服务器01,172.16.0.1])table.add_row([2,server02,服务器02,172.16.0.2])table.add_row([3,server03,服务器03,…

java 类型推理_java 11 局部变量类型推断

什么是局部变量类型推断?var javastack "javastack";System.out.println(javastack);大家看出来了,局部变量类型推断就是左边的类型直接使用 var 定义,而不用写具体的类型,编译器能根据右边的表达式自动推断类型&#…