当前位置:首页 » 编程语言 » python字典in

python字典in

发布时间: 2022-09-10 07:59:37

python字典WORD for m in WORD: print m为什么我得到的m只是key的值

要得到value可以这样
for m in WORD1:

print WORD1.get(m)

Ⅱ python字典,如何查找值中包含指定字符串的键

1、说明python中检测字典的键中是否含有某串字符,便利字典键值,再判断字符串是否在键值中即可。2、示例代码:# 定义一个字典dic = {'1984/1/2': 123, '1984/1/3': 0, '1985/1/1': 156}# 遍历字典键中是否包含1984for key in dic: if '1984' in key: print('键值中包含字符串"1984"') # 或者需要的其它操作 else: print('键值中不包含字符串"1984"')3、执行结果:键值中包含字符串"1984"键值中不包含字符串"1984"键值中包含字符串"1984"

4、其它说明:python使用for in直接操作字典就是遍历字典的键值,python使用in操作来判断字符串中是否包含子串最方便,要优于使用字符串的函数index或者find。

index函数在找不到子串时会报错,find函数会返回-1。

Ⅲ python 值在数组或字典的查询

#不求分只为学习交流~~
importitertools
a=[[1,2],[3,4,5],[6,8]]
b=[3,5]

#查找[3,5]in[3,4,5]
foriina:
print'bisina:',tuple(b)inlist(itertools.combinations(i,2))


#查找[3,5]in[3,4,5]以及[5,3]in[3,4,5]
b=[5,3]
foriina:
print'bisina:',tuple(b)inlist(itertools.permutations(i,2))

ps:数据量大也没有办法,又不能像数据库存储有索引分区等等,只有逐个遍历

Ⅳ python 列表内有字典怎么使用

Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。
一、创建字典
字典由键和对应值成对组成。字典也被称作关联数组或哈希表。基本语法如下:

复制代码代码如下:
dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

也可如此创建字典:

复制代码代码如下:
dict1 = { 'abc': 456 };
dict2 = { 'abc': 123, 98.6: 37 };

注意:
每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
键必须独一无二,但值则不必。
值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。
二、访问字典里的值
把相应的键放入熟悉的方括号,如下实例:

复制代码代码如下:
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];
#以上实例输出结果:
#dict['Name']: Zara
#dict['Age']: 7

如果用字典里没有的键访问数据,会输出错误如下:

复制代码代码如下:
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

print "dict['Alice']: ", dict['Alice'];

#以上实例输出结果:
#dict['Zara']:
#Traceback (most recent call last):
# File "test.py", line 4, in <mole>
# print "dict['Alice']: ", dict['Alice'];
#KeyError: 'Alice'[/code]
三、修改字典
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对如下实例:

复制代码代码如下:
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry

print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];
#以上实例输出结果:
#dict['Age']: 8
#dict['School']: DPS School

四、删除字典元素
能删单一的元素也能清空字典,清空只需一项操作。
显示删除一个字典用del命令,如下实例:

复制代码代码如下:
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

del dict['Name']; # 删除键是'Name'的条目
dict.clear(); # 清空词典所有条目
del dict ; # 删除词典

print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];
#但这会引发一个异常,因为用del后字典不再存在:
dict['Age']:
#Traceback (most recent call last):
# File "test.py", line 8, in <mole>
# print "dict['Age']: ", dict['Age'];
#TypeError: 'type' object is unsubscriptable

五、字典键的特性
字典值可以没有限制地取任何python对象,既可以是标准的对象,也可以是用户定义的,但键不行。
两个重要的点需要记住:
1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住,如下实例:

复制代码代码如下:
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'};

print "dict['Name']: ", dict['Name'];
#以上实例输出结果:
#dict['Name']: Manni

2)键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行,如下实例:

复制代码代码如下:
#!/usr/bin/python

dict = {['Name']: 'Zara', 'Age': 7};

print "dict['Name']: ", dict['Name'];
#以上实例输出结果:
#Traceback (most recent call last):
# File "test.py", line 3, in <mole>
# dict = {['Name']: 'Zara', 'Age': 7};
#TypeError: list objects are unhashable

六、字典内置函数&方法
Python字典包含了以下内置函数:
1、cmp(dict1, dict2):比较两个字典元素。
2、len(dict):计算字典元素个数,即键的总数。
3、str(dict):输出字典可打印的字符串表示。
4、type(variable):返回输入的变量类型,如果变量是字典就返回字典类型。
Python字典包含了以下内置方法:
1、radiansdict.clear():删除字典内所有元素
2、radiansdict.():返回一个字典的浅复制
3、radiansdict.fromkeys():创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
4、radiansdict.get(key, default=None):返回指定键的值,如果值不在字典中返回default值
5、radiansdict.has_key(key):如果键在字典dict里返回true,否则返回false
6、radiansdict.items():以列表返回可遍历的(键, 值) 元组数组
7、radiansdict.keys():以列表返回一个字典所有的键
8、radiansdict.setdefault(key, default=None):和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default
9、radiansdict.update(dict2):把字典dict2的键/值对更新到dict里
10、radiansdict.values():以列表返回字典中的所有值

Ⅳ python如何检测字典的键中是否含有某串字符

1、说明
python中检测字典的键中是否含有某串字符,便利字典键值,再判断字符串是否在键值中即可。

2、示例代码:
# 定义一个字典
dic = {'1984/1/2': 123, '1984/1/3': 0, '1985/1/1': 156}
# 遍历字典键中是否包含1984
for key in dic:
if '1984' in key:
print('键值中包含字符串"1984"')
# 或者需要的其它操作
else:
print('键值中不包含字符串"1984"')

3、执行结果:
键值中包含字符串"1984"
键值中不包含字符串"1984"
键值中包含字符串"1984"


4、其它说明:
python使用for in直接操作字典就是遍历字典的键值,python使用in操作来判断字符串中是否包含子串最方便,要优于使用字符串的函数index或者find。

index函数在找不到子串时会报错,find函数会返回-1。

Ⅵ python怎样获取字典中前十个

字典为mydict={'a':1,'b':2,'c':3,'d':4,'e':5,'f':6,'g':7,'h':8,'i':9,'j':10,'k':11}
#打印字典的所有键值
print(mydict.keys())
#打印字典的所有值
print(mydict.values())
#打印字典的前5个键值
print([i for i in mydict.keys()][:5])
#打印字典的前8个值
print([i for i in mydict.values()][:8])

Ⅶ python字典的键是唯一的吗

dict中键只有在值和类型完全相同的时候才视为一个键:
mydict = {1:1,'1':1} #此时mydict[1] 与 mydict['1']是两个不同的键值

dict的一些常用方法:
clear(): #清空字典(): #浅复制字典.deep(): #深复制get('xx', 'return'): #访问元素不存在时返回None,或者手动指定返回值has_key(): #检查字典中是否含有键,相当于 in 关键字items(): #将字典以列表[(k,v),(k,v)]的形式返回iteritem(): #类似items,但返回的是迭代器对象keys(): #返回包含所有键的listiterkeys(): #返回包含所有键的迭代器对象values(): #同keysitervalues(): #同iterkeyspop('x'): #移除键值对并返回其值popitem(): #随机移除一个键值对并返回其值update(otherdict): #

Ⅷ python字典操作问题

应为在python中dict是可变对象。用dic1赋值给dic3后,并没有创建一个新的对象,dic3和dic1指向同一个对象。通过dic3改变其内容,就如同通过dic1改变对象内容一样。

具体的内容你可以看看深拷贝和浅拷贝

import
defcom_weight(dic1,dic2):
dic3=.deep(dic1)#深拷贝,,,,
foriindic1.keys():
forjindic1[i].keys():
dic3[i][j]=dic1[i][j]-dic2[i][j]

printdic3

if__name__=='__main__':

dic1={1:{1:142264,2:142315},2:{3:142111},3:{3:142723}}
dic2={1:{1:142263,2:142312},2:{3:142110},3:{3:142722}}

print'__________________'
printdic1
printdic2
print'*******************'
com_weight(dic1,dic2)
print'~~~~~~~~~~~~~~~~~~~~~~~~'
printdic1
printdic2

Ⅸ python 字典的问题

题主你好,

写在前面: 我先给题主举个例子, 我先定义一个字典:

dict03 = {1:3, 5:7}

可以看出上面这个字典有两个元素, 此时我们使用dict03.values()得到的结果为:

dict_values([3,7])

从上面这个结果可以看出, 字典的values方法,会将字典中的所有键值对的值生成一个列表, 作为dict_values()参数,并返回.

-----

上面没有讲到重点,只是作了一个引, 下面看到底问题出在哪了.

题主定义的dict03={0:[1,3,5,7]}, 这个字典, 其实只有一个键值对, 键是整数0,值是列表[1,3,5,7], 所以此时dict03.value()返回的值为 dict_values([[1,3,5,7]]), 重点就在这里, 注意,返回的是:

dict_values( [[ 1,3,5,7 ]] )

而不是

dict_values( [ 1,3,5,7 ] )

抛开前面这个dict_values, 也就是返回的是:

[[1,3,5,7]] 而不是 [1,3,5,7]

前者是含有一个元素的列表, 只不过这个元素本身也是一个列表;

后者是含有4个元素的列表, 每个元素都是整型数字;

而 x in y 这种形式中, 是看x是否存在于y中,

拿题主的代码来说, 其实 i in dict03.values() 翻译过来是:

5 in [[1,3,5,7]], 因为[[1,3,5,7]]这个列表就一个元素,为[1,3,5,7],所以5并不在[[1,3,5,7]]中,

如果翻译过来是:

5 in [1,3,5,7],那么我们得到的结果肯定是True, 因为[1,3,5,7]中有4个元素,而5恰在其中.

所以解决方法也就有了, 想办法去掉[[1,3,5,7]]最外层的[].

代码及测试截图如下:

上图中, 第一个红框是将dict_values([[1,3,5,7]])转换成 [[1,3,5,7]];

第二个红框是将[[1,3,5,7]]转换成[1,3,5,7];

此时最后一句print(5 in [1,3,5,7]) 也就得到了我们想要的结果True了.

-----

希望可以帮到题主, 欢迎追问.

Ⅹ python中字典的取值

字典访问格式是——字典名[键名]
你的那句danjia=jiage['wupin']错了,字典中没有键名'wupin'。
按照你的意思,应该把输入语句换下wupin=input(...),wupin存放字符串属性的输入,你字典里的键名是字符串属性的。然后字典访问的那句改为danjia=jiage[wupin]。这里字典访问时就是访问变量wupin对应的值的键名。

热点内容
win7的缓存文件夹 发布:2025-01-12 23:32:12 浏览:954
安卓哪个文件锁好 发布:2025-01-12 23:31:23 浏览:325
怎么让安卓用苹果耳机有弹窗 发布:2025-01-12 23:30:34 浏览:958
oracle存储过程有返回值 发布:2025-01-12 23:30:34 浏览:7
用友服务器怎样同步ip 发布:2025-01-12 23:29:52 浏览:979
qt编译vlcqt库 发布:2025-01-12 23:24:45 浏览:244
攻击linux服务器 发布:2025-01-12 23:17:01 浏览:6
天籁哪个配置亲民 发布:2025-01-12 23:16:26 浏览:482
零售通交易密码是什么 发布:2025-01-12 23:13:02 浏览:319
监控器压缩 发布:2025-01-12 22:51:29 浏览:248