
在python中遍历字典并去除空白
我正在使用Scrapy的网络抓取框架,在使用python时我有些菜鸟。因此,我想知道如何对似乎在字典中的所有已刮除项目进行迭代,并从每个项目中删除空白。这是我在项目管道中一直在使用的代码:for info in item: info[info].lstrip()但是此代码不起作用,因为我无法单独选择项目。所以我尝试这样做:for ...
2024-01-10
Python字典理解
是否可以在Python中(对于键)创建字典理解?如果没有列表理解,则可以使用以下内容:l = []for n in range(1, 11): l.append(n)我们可以将其简化为列表理解:l = [n for n in range(1, 11)]。但是,说我想将字典的键设置为相同的值。我可以:d = {}for n in range(1, 11): d[n] = True # same value for each我已经试过了...
2024-01-10
Python:遍历列表与字典项效率
迭代some_dict.items()效率与CPython中相同项目列表的迭代效率一样吗?回答:这取决于您使用的Python版本。在Python2中,some_dict.items()创建一个新列表,这会花费一些额外的时间并消耗更多的内存。另一方面,一旦创建了列表,它就是一个列表,因此在完成列表创建的开销之后,应该具有相同的性能特征。...
2024-01-10
Python-遍历所有嵌套的字典值?
for k, v in d.iteritems(): if type(v) is dict: for t, c in v.iteritems(): print "{0} : {1}".format(t, c)我试图遍历字典并打印出所有值不是嵌套字典的键值对。如果值是字典,我想进入它并打印出它的键值对…等等。有什么帮助吗?这个怎么样?它仍然只打印一件事。def printDict(d): for k, v in d.iteritems():...
2024-01-10
如何在python字典中创建缩写
我想在字典中缩写2个字符串中的第一个字。如何在python字典中创建缩写输入字典:names = { 'fire' : 'John Smith', 'water' : 'Steve Doe', 'earth' : 'Bob Smith' } 我想这是输出。输出词典:names_ab = { 'fire' : 'J. Smith', 'water' : 'S. Doe', 'earth' : 'B. Smith' } 回答:你可以做这样的事情:names = {'fire': 'John Sm...
2024-01-10
检查存在的字典VS在python
一组似乎检查字典键作为集是一个稍快一点:检查存在的字典VS在pythonimport random import string import timeit repeat = 3 numbers = 1000 def time(statement, _setup=None): print min( timeit.Timer(statement, setup=_setup or setup).repeat( repeat, numbers)) random.seed('slartiba...
2024-01-10
Python-重命名字典键
有没有一种方法可以重命名字典键,而无需将其值重新分配给新名称并删除旧名称键;而且没有迭代字典键/值?对于OrderedDict,在保持键的位置的同时执行相同的操作。回答:对于常规命令,可以使用:mydict[new_key] = mydict.pop(old_key)对于OrderedDict,我认为你必须使用一种理解来构建一个全新的。>>> Or...
2024-01-10
python:遍历列表中的特定范围
可以说我有一个清单:listOfStuff =([a,b], [c,d], [e,f], [f,g])我想要做的是以类似于以下代码的方式遍历中间2个组件:for item in listOfStuff(range(2,3)) print item最终结果应如下所示:[c,d][e,f]该代码当前不起作用,但希望您能理解我正在尝试做的事情。回答:listOfStuff =([a,b], [c,d], [e,f], [f,g])for item in listOfS...
2024-01-10
Python-字典中键的顺序
码:d = {'a': 0, 'b': 1, 'c': 2}l = d.keys()print l打印['a', 'c', 'b']。我不确定该方法如何keys()确定l中关键字的顺序。但是,我希望能够以“适当”的顺序检索关键字。当然,正确的顺序将创建列表['a', 'b', 'c']。和这个:os.popen("sudo -S %s"%(command), 'w').write('mypass')回答:你可以使用OrderedDict(需要Python 2.7)或...
2024-01-10
仅在Python字典中加入值
我有一本字典。我只想加入价值观。这是字典: -仅在Python字典中加入值d = {'x': 1, 'y': 2, 'z': 3} 我的预期输出为123(应该是123,没有任何排序)代码我使用: -d = {'x': 1, 'y': 2, 'z': 3} test = ' '.join(d.values()) print test 它显示的错误: -Traceback (most recent call last): File "test.py", line 2, in <module> t...
2024-01-10
Python-使用“ for”循环遍历字典
以下代码使我有些困惑:d = {'x': 1, 'y': 2, 'z': 3} for key in d: print key, 'corresponds to', d[key]我不明白的是那key部分。Python如何识别它只需要从字典中读取密钥?是keyPython中的特殊字?还是仅仅是一个变量?回答:5174key 只是一个变量名。for key in d:只会循环遍历字典中的键,而不是键和值。要遍历键...
2024-01-10
如何在python字典中获取第一个值
我有一本这样的字典:myDict = { 'BigMeadow2_U4': (1609.32, 22076.38, 3.98), 'MooseRun': (57813.48, 750187.72, 231.25), 'Hwy14_2': (991.31, 21536.80, 6.47) }如何获得字典中每个项目的第一个值?我最后要列出一个清单:myList = [1609.32,57813.48,991.31]回答:尝试这种方式:my_list = [elem[0] for ...
2024-01-10
如何在python中打印字典的键值对
我想像这样从python字典输出键值对:key1 \t value1key2 \t value2我以为我可以这样做:for i in d: print d.keys(i), d.values(i)但是很明显,这不是keys()和values()不争论的方式。回答:您现有的代码只需进行一些调整。i 是 关键,因此您只需要使用它:for i in d: print i, d[i]您还可以获得包含键和值的迭代器...
2024-01-10
在Python中遍历一系列日期
我有以下代码可以做到这一点,但是我该如何做得更好呢?现在,我认为它比嵌套循环更好,但是当列表理解器中包含生成器时,它开始变得Perl-linerish。day_count = (end_date - start_date).days + 1for single_date in [d for d in (start_date + timedelta(n) for n in range(day_count)) if d <= end_date]: print strftime("%Y-%m-%d", si...
2024-01-10
将Python字典转换为数据框
我有如下的Python字典:{u'2012-06-08': 388, u'2012-06-09': 388, u'2012-06-10': 388, u'2012-06-11': 389, u'2012-06-12': 389, u'2012-06-13': 389, u'2012-06-14': 389, u'2012-06-15': 389, u'2012-06-16': 389, u'2012-06-17': 389, u'2012-06-18': 390, u'2012-06-19': 390, u...
2024-01-10
在python字典中赋值(复制与参考)
我知道在python中,任何东西,无论是数字,字符串,字典还是其他任何东西都是对象。变量名只是指向内存中的对象。现在根据这个问题,>> a_dict = b_dict = c_dict = {}这将创建一个空字典,并且所有变量都指向该dict对象。因此,更改任何一个都会反映在其他变量中。>> a_dict["key"] = "value" #say>> print a_dict>...
2024-01-10
Python-反转/反转字典映射
给定这样的字典:my_map = {'a': 1, 'b': 2}如何将这张地图倒置即可:inv_map = {1: 'a', 2: 'b'}回答:对于Python 2.7.xinv_map = {v: k for k, v in my_map.iteritems()}对于Python 3+:inv_map = {v: k for k, v in my_map.items()}...
2024-01-10
在python中,如何将类对象转换为字典
假设我在python中有一个简单的类class Wharrgarbl(object): def __init__(self, a, b, c, sum, version='old'): self.a = a self.b = b self.c = c self.sum = 6 self.version = version def __int__(self): return self.sum + 9000 d...
2024-01-10
在Python中,如何遍历字典并更改等于值的值?
如果值为None,我想将其更改为“”(空字符串)。我像这样开始,但我忘记了:for k, v in mydict.items(): if v is None:... right?回答:for k, v in mydict.iteritems(): if v is None: mydict[k] = ‘’在更一般的情况下,例如,如果要添加或删除键,则更改正在循环的容器的结构可能并不安全-因此使用循...
2024-01-10
从Python字典中的值中查找键:
对Python来说还算是新手,仍然需要大量的信息。我所见过的所有关于字典的文档都说明了通过键获取值的各种方法-但我正在寻找一种反之的pythonic方法-通过值获取键。我知道我可以遍历键并检查它们的值,直到找到要查找的值,然后抓住键,但是我正在寻找直接途径。回答:没有直接路线。但是,...
2024-01-10
Python-按字典中的值获取密钥
我制作了一个函数,该函数将查询年龄Dictionary并显示匹配的名称:dictionary = {'george' : 16, 'amber' : 19}search_age = raw_input("Provide age")for age in dictionary.values(): if age == search_age: name = dictionary[age] print name我知道如何比较和查找年龄,但我不知道如何显示此人的名字。另外,KeyErr...
2024-01-10
如何在Python中逐行打印字典?
这是字典cars = {'A':{'speed':70, 'color':2}, 'B':{'speed':60, 'color':3}}使用这个 for loopfor keys,values in cars.items(): print(keys) print(values)它打印以下内容:B{'color': 3, 'speed': 60}A{'color': 2, 'speed': 70}但是我希望程序像这样打印它:Bcolor : 3speed...
2024-01-10
使用Python中的重复键制作字典
我有以下列表,其中包含重复的具有不同值的汽车注册号。我想将其转换为字典,该字典接受汽车登记号的多个键。到目前为止,当我尝试将列表转换为字典时,它消除了键之一。如何制作具有重复键的字典?清单是:EDF768, Bill Meyer, 2456, Vet_ParkingTY5678, Jane Miller, 8987, AgHort_ParkingGEF123, Jill Black, 3456, Cre...
2024-01-10
Python-展平嵌套字典,压缩键
假设你有一个像这样的字典:{'a': 1, 'c': {'a': 2, 'b': {'x': 5, 'y' : 10}}, 'd': [1, 2, 3]}你将如何将其扁平化为:{'a': 1, 'c_a': 2, 'c_b_x': 5, 'c_b_y': 10, 'd': [1, 2, 3]}回答:基本上与展平嵌套列表的方式相同,只需要做额外的工作即可按键/值迭代字典,为新字典创建新键并在最后一步创建字典。...
2024-01-10
Python-如何按键对字典排序?
这将是一个很好的方式,从去{2:3, 1:89, 4:5, 3:0}到{1:89, 2:3, 3:0, 4:5}?我检查了一些帖子,但它们都使用了返回元组的”sorted” 运算符。回答:标准Python字典是无序的。即使你对(key,value)对进行了排序,也无法以dict保留顺序的方式存储它们。最简单的方法是使用OrderedDict,它可以记住元素插入的顺序...
2024-01-10
