【python字典基础知识点】教程文章相关的互联网学习教程文章

如何通过读取.txt文件为每个键创建包含多个“列表”的Python字典?【代码】

我有一个大文本文件,看起来像:1 27 21 22 1 151 24 26 1 48 24 31 2 14 6 8 2 98 13 16 . . .我想用它创建一个字典.每个列表的第一个数字应该是字典中的键,应该采用以下格式:{1: [(27,21,22),(151,24,26),(48,24,31)],2: [(14,6,8),(98,13,16)]}我有以下代码(总点数是文本文件第一列中的最大数字(即字典中的最大键)):from collections import defaultdictinfo = defaultdict(list) filetxt = 'file.txt' i ...

python – 字典不会以字符串作为键更新【代码】

我正在尝试使用返回元组的函数更新字典,其中第一个元素是字符串.>>> def t(): ... return 'ABC', 123然而,dict.update功能并不十分喜欢它.>>> d = {} >>> d.update(t()) Traceback (most recent call last):File "<stdin>", line 1, in <module> ValueError: dictionary update sequence element #0 has length 3; 2 is required我也可以尝试字典理解并获得相同的意外结果.>>> d.update({k: v for k, v in t()}) Traceback (mo...

python – 将字典转换为Numpy数组【代码】

我正在尝试转换字典{0: {0: 173, 1: 342, 2: 666, 3: 506, 4: 94},1: {0: 13, 1: 2171, 2: 1915, 3: 3075, 4: 630},2: {0: 0, 1: 265, 2: 5036, 3: 508, 4: 11},3: {0: 0, 1: 3229, 2: 2388, 3: 3649, 4: 193},4: {0: 3, 1: 151, 2: 591, 3: 1629, 4: 410}}numpy数组array([[ 173, 342, 666, 506, 94],[ 13, 2171, 1915, 3075, 630],[ 0, 265, 5036, 508, 11],[ 0, 3229, 2388, 3649, 193],[ 3, 151, 591, 162...

Python字典以随机顺序返回键【代码】

我有一个简单的dicts字典如下:stb = {'TH0':{0:'S0',1:'Sample1',2:'Sample2',3:'Sample4'},'TH1':{0:'Sa0',1:'Sample1',2:'Sample2',3:'Sample4'},'TH2':{0:'Sam0',1:'Sampled1.0',2:'Sampled2.0',3:'Sampled4.0'},'TH3':{0:'Samp0',1:'Sample1',2:'Sample2',3:'Sample4'},'TH4':{0:'Sampl0',1:'Sample1',2:'Sample2',3:'Sample4'}, } tb = stbtheaders = [] for k in tb.keys():theaders.append(k) columns = len(theaders) row...

比较类型列表的python字典值,看它们是否按顺序匹配【代码】

prefs = {'s1': ["a", "b", "c", "d", "e"],'s2': ["c", "d", "e", "a", "b"],'s3': ["a", "b", "c", "d", "e"],'s4': ["c", "d", "e", "b", "e"] }我有一个字典,我想比较每个键的值(类型:列表),看它们是否按顺序存在.所以基本上我试图遍历每个键值对,并将类型列表的值与下一个值进行比较,以查看该列表中的元素是否与该特定顺序匹配.如果我们找到匹配项,我想返回一个匹配列表. 例如:s1值是一个包含元素“a”,“b”,“c”,“d”,...

python:从字典中打印值【代码】

generic_drugs_mapping={'MORPHINE':[86],'OXYCODONE':[87],'OXYMORPHONE':[99],'METHADONE':[82],'BUPRENORPHINE':[28],'HYDROMORPHONE':[54],'CODEINE':[37],'HYDROCODONE':[55]}我怎么回86? 这似乎不起作用:print generic_drugs_mapping['MORPHINE'[0]]解决方法:该列表是存储在密钥下的值.获取值的部分是generic_drugs_mapping [‘MORPHINE’],因此它具有值[86].尝试将索引移到外面,如下所示:generic_drugs_mapping['MORPHIN...

如何将Python字典对象转换为numpy数组【代码】

我有python dict对象,键为datetime.date对象,值为元组对象:>>> data_dict {datetime.date(2006, 1, 1): (5, 3),datetime.date(2006, 1, 2): (8, 8),datetime.date(2006, 1, 3): (8, 5),datetime.date(2006, 1, 4): (3, 3),datetime.date(2006, 1, 5): (3, 3),datetime.date(2006, 1, 6): (4, 3), ...我想以这种格式将其转换为numpy数组对象:dtype([('date', '|O4'), ('high', '<i1'), ('low', '<i1')])这样我就可以将它存储在磁盘...

python – 将字典键连接到字符串【代码】

我有14个字典都包含相同的信息键(即时间,日期等),但值不同.我正在尝试构建一个函数,当字典被列为函数中的参数时,它将把一个句子放在一起. 如果我有一本字典:dic1 = {'Name': 'John', 'Time': 'morning'}我想将它们连接成一个字符串:print 'Hello ' + dic1['Name']+', good ' + dic1['Time']+ '.'我该怎么做? *注意,抱歉,这会返回错误:TypeError: can only concatenate list (not "str") to list解决方法:使用新样式字符串格式(...

Python字典使用PyYaml进入yaml文档【代码】

我有两个python词典,我想写一个yaml文件,有两个文件:definitions = {"one" : 1, "two" : 2, "three" : 3} actions = {"run" : "yes", "print" : "no", "report" : "maybe"}yaml文件应如下所示:--- !define one: 1 two: 2 three: 3-- !action run: yes print: no report: maybe ...使用PyYaml我没有找到明确的方法来做到这一点.我确信有一个简单的方法,但深入研究PyYaml文档,只会让我感到困惑.我需要自卸车,发射器还是什么?这些类...

如何在Python字典上执行set操作?【代码】

虽然能够在字典的键之间进行设置操作是非常有用的,但我经常希望我可以在字典本身上执行设置操作. 我找到了一些服用the difference of two dictionaries的食谱,但我发现这些食谱非常冗长,并且觉得必须有更多的pythonic答案.解决方法:tl; dr Recipe:{k:d1.get(k,k in d1或d2 [k])in k in set(d1)| set(d2)}和|可以用任何其他集合运算符替换. 基于@ torek的评论,另一个可能更容易记住的方法(虽然完全一般)是:{k:d1.get(k,d2.get(k...

python – 将字典中的列表添加到DataFrame作为新列【代码】

假设我有以下pandas DataFrame:df = pd.DataFrame({'x': [0, 1, 2], 'y': [3, 4, 5], 'z': [6, 7, 8]})x y z0 0 3 61 1 4 72 2 5 8以下字典:d = {'a': [10, 10, 10], 'b': [100, 100, 100]}将字典添加到DataFrame以获取以下内容的最佳方法是什么:x y z a b0 0 3 6 10 1001 1 4 7 10 1002 2 5 8 10 100这是我到目前为止所提出的,但我觉得必须有更好的方法:df_bigge...

python – 从字典中按位置获取键值【代码】

我使用python词典tel = {‘jack’:4098,’sape’:4139 …..,’john’:5147}有没有办法获取位于索引范围之间的所有值?例如,所有值都位于第5-10位…… 谢谢,弥敦道解决方法:python字典中没有索引/位置.键/值对没有任何特定的顺序. 如果要从字典中选择特定位置,则必须为其指定一些条件/顺序. 例如,根据名称的字母顺序:sorted(tel.items())[5:11]从字母顺序的5-10位返回5个元组(名称,数字)的列表.

python字典的相关操作

dict = {“name”:“ghf”,“age”:18} ‘’’ #根据键获取值 #当键不存在时会报错 print(dict[“name”]) #键存在返回对应的值,不存在返回none,可以指定返回值 print(dict.get(“xxx”,“指定返回值”)) #根据键返回值,键存在返回对应的值,不存在会添加一个键值对 print(dict.setdefault(“a”,8)) #修改元素 #ict[“name”] = “ghf” #print(dict) #如果键不存在则会添加一个键值对 #更新键值对(存在则更新,不存在则添加) ...

Python--字典的一些用法【代码】

1.dict.items() 例子1: 以列表返回可遍历的(键, 值) 元组数组。dict = {Name: Runoob, Age: 7}print ("Value : %s" % dict.items())返回结果:Value : dict_items([(Age, 7), (Name, Runoob)]) 例子2:遍历dict = {Name: Runoob, Age: 7} for i,j in dict.items():print(i, ":\t", j)返回结果:Name : Runoob Age : 7例子3:将字典的 key 和 value 组成一个新的列表:d={1:"a",2:"b",3:"c"} result=[] for k,v in d.items():...

在python字典中编辑值【代码】

我有一个超过1000个密钥的大字典,每个值超过600 000 int long.现在,我需要提取一些这些整数,所以从60万我想去说5k.但它不能随机5k,它们必须处于非常具体的位置.由于5k仍然有点太大而无法手工提取,我需要使用一个索引列表来指示值中应该取出哪些整数.我测试了小列表上的提取,索引[1,3,5,7,9]和long_val [‘a’,’b’,’c’,’d’,’e’,’f’,’g ‘,’h’,’我’,’j’,’k’]然后我可以这样做:for each in xrange(len(long_val))...

字典 - 相关标签