导读:本篇文章首席CTO笔记来给大家介绍有关python中获取字典有多少个键的相关内容,希望对大家有所帮助,一起来看看吧。
Python其实很简单 第十章 字典与集合
前面介绍的列表和元组都是有序序列,而字典与集合属于无序序列,也就是说,不能通过索引来操作元素。
10.1 字典
语法格式:
dictionary= {key1 : value1, key2 : value2, key3 : value3 ,...., key n : value n }
其中,dictionary是字典名称,key表示元素的键,value表示元素的值,键和值必须是成对的。
如:
dict1 = { 'abc': 123, 98.6: 37 }
dict1
{'abc': 123, 98.6: 37}
可以看出,键可以是字符串、数字或者元组,但必须是唯一的;而值可以是任何数据类型,也没有要求是唯一的。
1、创建字典的方法
方法一:同时给定键和值,即“关键字参数”形式。
dictionary=dict(key1=value1,key2=value2,.....,key n=value n)
注意:这里的key 必须符合Python标识符的命名规则。
例:
先使用“{}”创建字典:
dict1={1:'一',2:'二',3:'三',4:'四',5:'五'}
dict1
{1: '一', 2: '二', 3: '三', 4: '四', 5: '五'}
再通过“关键字参数”形式创建:
dict1=dict(1='一',2='二',3='三',4='四',5='五')
SyntaxError: expression cannot contain assignment, perhaps you meant "=="?
创建不成功,原因在于key 不符合Python标识符的命名规则。前面已经介绍过,标识符不能用数字表示或者用数字打头。
现在对键如下修改:
dict1=dict(n1='一',n2='二',n3='三',n4='四',n5='五') #在数字前加了一个字符”n”
dict1
{'n1': '一', 'n2': '二', 'n3': '三', 'n4': '四', 'n5': '五'}
方法二 :使用已经存在的元组和列表通过映射函数创建字典。
格式:dictionary=dict(zip(tuplekey,listvalue))
例:
tuplekey=('n1','n2','n3','n4','n5') #键的序列采用元组
listvalue=['一','二','三','四','五'] #值的序列采用列表
dict1=dict(zip(tuplekey,listvalue))
dict1
{'n1': '一', 'n2': '二', 'n3': '三', 'n4': '四', 'n5': '五'}
注意:tuple(listname)函数可以将列表转换为元组,list(tuplename)函数可以将元组转换为列表。
2、通过键访问字典
直接获取键的相应元素的值
dict1['n2']
'二'
利用get()方法
dict1.get('n2')
'二'
get()方法也可以带参数,当要访问的键不存在时返回一个字符串。如:
dict1.get('n0','can't find!') #当要查找的键不存在,返回'can't find!'
"can't find!"
3、遍历字典
使用字典对象的items()方法可以获取字典的“键.值对”列表。
for item in dict1.items():
print(item)
('n1', '一')
('n2', '二')
('n3', '三')
('n4', '四')
('n5', '五')
也可以获取具体的每个元素的键和值,如:
for key,value in dict1.items():
print(key,'对应的是',value)
n1 对应的是 一
n2 对应的是 二
n3 对应的是 三
n4 对应的是 四
n5 对应的是 五
4、添加、修改和删除字典元素
使用下面的语句,若指定的键存在,就可以修改该元素的值;若指定的键不存在,则添加该元素。如:
dict1['n6']='六' # 键’n6’不存在,故添加该元素
dict1
{'n1': '一', 'n2': '二', 'n3': '三', 'n4': '四', 'n5': '五', 'n6': '六'}
dict1['n4']='肆' # 键’n4’存在,故修改该元素
dict1
{'n1': '一', 'n2': '二', 'n3': '三', 'n4': '肆', 'n5': '五', 'n6': '六'}
5、利用推导式建立字典
import random
dict1={i:random.randint(1,100) for i in range(5)}
# 生成元素的键为0到5整数,值为1到100之间的随机数
print(dict1)
运行结果:{0: 28, 1: 59, 2: 79, 3: 30, 4: 88}
10.2 集合
集合是数学中一个很重要的概念,集合具有确定性、互异性、无序性三个基本属性。在Python中,集合同样具有这三个基本属性,其中,确定性是指对象要么是集合的元素,要么不是集合的元素;互异性是指集合中的元素不能重复;无序性是指集合中的元素不分先后次序,可以随意更换位置。
1、集合的创建
直接使用“{}”创建
set1={'春','夏','秋','冬'}
set1
{'秋', '春', '冬', '夏'}
set2={3,2,1,4,5}
set2
{1, 2, 3, 4, 5}
利用已有的列表、元组创建集合
list1=['东','南','西','北']
set3=set(list1)
set3
{'南', '东', '北', '西'}
利用已有的集合建立一个“副本”
set3
{'南', '东', '北', '西'} #set3和set4的值一样
set4=set3
set4
{'南', '东', '北', '西'}
set4.add('中') #给set4添加元素
set4
{'西', '中', '东', '南', '北'} # 这个好理解
set3
{'西', '中', '东', '南', '北'} # 意想不到吧?Set3为什么会发生变化?
再看看简单变量的情况:
a=2
b=a #是不是与前面set4=set3相似
b+=1
b
3
a
2 #但a的值并没有发生改变
从上面集合set3、set4和简单变量a、b的值的变化情况对比,不难发现set3和set4是指向同一地址的对象,而变量a和变量b指向了不同地址,语句b=a是将a的值传递个b,并不是将a的地址传递给b。列表、元组、字典都和集合一样具有这样的性质。
所以,将set4称为set3的“副本”更为恰当。
2、添加和删除元素
set3
{'南', '东', '北', '西'}
set3.add('中') # 添加元素
set3
{'西', '中', '东', '南', '北'} # 集合内的元素是无序的,不要纠结次序的变化
set3.remove('中') # 删除元素
set3
{'西', '东', '南', '北'}
3、集合运算
集合运算包括交()、并(|)、差(-),和数学中的集合运算是一致的。
set3={'南', '东', '北', '西'}
set4={'西', '中', '东', '南', '北'}
set3 set4 #取set3和set4的交集
{'西', '南', '北', '东'}
set3 | set4 #取set3和set4的并集
{'中', '南', '北', '西', '东'}
set3 - set4 #取set3与set4的差,即set3比set4多出来的元素
set()
set4 -set3 #取set4与set3的差,即set4比set3多出来的元素
{'中'}
python中怎么取出字典的键
举例如下:
1、新增python文件,testdictkey.py;
2、编写python代码,定义字典,并获取字典的key;
my_dict = dict(name="lili", age=32, money=1200, hourse=None)
key_list = my_dict.keys()
print(list(key_list))
3、选择‘在终端中运行Python文件’;
4、查看运行结果,可以输出字典的所有键;['name', 'age', 'money', 'hourse']
python计算字典里面有多少个key
这个是python官方的中文教程
有最新的3.4.3版本的
也可以选择中英对照
基本的东西都讲述的差不多了
如果想了解更多库或模块
知乎上大神很多
随便找一找都能找到很多有用的建议
但是建议不要初期就看过多虚的比较和互撕神马的
官方的idle用好了之...
python 只获得字典中所有键的名字到列表中
d={'a': 2, 'b': 3, 'd': 4}
dlist=list(d.keys())
用字典的keys方法获得所有键的名字,python3需要转换为list,python2直接为list
python的字典,最多可以存储多少个键值。字典全是数据库吗?不是的话什么是数据库的定义?
这个“最多”没有太大意义,它和操作系统、物理内存、嵌套深度都有关系。实际应用可以不用考虑这个问题,稍微大一些的数据规模就已经不会考虑使用字典了。
字典和数据库没有直接的联系。
字典和、列表、元组,都是类似其他语言的一种数组类型变量。只是类似保存一些数据。
数据库则最少由DBMS+DB两部分组成,DBMS即数据库管理系统,DB即物理的数据库文件。通常编写数据库应用,都是操作DBMS,而非直接操作数据库文件。
因为字典的键、值,有点像数据库的字段和,字段值。所以python有时会把读取的数据库数据,写入字典来进行处理。
python 中关于字典的键
WTF
"JavaScript" 怎么不见了?
1.Python 字典通过检查键值是否相等和比较哈希值来确定两个键是否相同.
2.具有相同值的不可变对象在Python中始终具有相同的哈希值.
具有不同值的对象也可能具有相同的哈希值(哈希冲突).
看完记得点赞哦,笔芯
结语:以上就是首席CTO笔记为大家整理的关于python中获取字典有多少个键的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~