相关疑难解决方法(0)

检查字典中是否已存在给定键

我想在更新密钥的值之前测试字典中是否存在密钥.我写了以下代码:

if 'key1' in dict.keys():
  print "blah"
else:
  print "boo"
Run Code Online (Sandbox Code Playgroud)

我认为这不是完成这项任务的最佳方式.有没有更好的方法来测试字典中的密钥?

python dictionary

2683
推荐指数
15
解决办法
322万
查看次数

如何访问环境变量值?

我设置了一个我想在Python应用程序中访问的环境变量.我如何获得这个价值?

python environment-variables

1878
推荐指数
14
解决办法
161万
查看次数

安全地从字典中删除多个键

我知道要从我的字典中删除一个条目"key" d,安全地,你这样做:

if d.has_key('key'):
    del d['key']
Run Code Online (Sandbox Code Playgroud)

但是,我需要安全地从字典中删除多个条目.我正在考虑在元组中定义条目,因为我需要不止一次地执行此操作.

entitiesToREmove = ('a', 'b', 'c')
for x in entitiesToRemove:
    if d.has_key(x):
        del d[x]
Run Code Online (Sandbox Code Playgroud)

但是,我想知道是否有更聪明的方法来做到这一点?

python dictionary

103
推荐指数
9
解决办法
9万
查看次数

'dict'对象没有属性'has_key'

在Python中遍历图形时,我收到此错误:

'dict'对象没有属性'has_key'

这是我的代码:

def find_path(graph, start, end, path=[]):
    path = path + [start]
    if start == end:
        return path
    if not graph.has_key(start):
        return None
    for node in graph[start]:
        if node not in path:
            newpath = find_path(graph, node, end, path)
            if newpath: return newpath
    return None
Run Code Online (Sandbox Code Playgroud)

该代码旨在找到从一个节点到另一个节点的路径.代码来源:http://cs.mwsu.edu/~terry/courses/4883/lectures/graphs.html

为什么我会收到此错误,如何解决?

python dictionary python-3.x

72
推荐指数
5
解决办法
11万
查看次数

Check元素存在于数组中

在PHP中有一个函数调用isset()来检查某些东西(如数组索引)是否存在并具有值.Python怎么样?

我需要在数组上使用它,因为我有时会得到"IndexError:list index out of range".

我想我可以使用try/catch,但这是最后的选择.

python

63
推荐指数
4
解决办法
13万
查看次数

确定字典中是否存在密钥

可能重复:
'has_key()'或'in'?

我有一个Python字典,如:

mydict = {'name':'abc','city':'xyz','country','def'}
Run Code Online (Sandbox Code Playgroud)

我想检查密钥是否在字典中.我很想知道从以下两个案例中哪个更为可取,为什么?

1> if mydict.has_key('name'):
2> if 'name' in mydict:
Run Code Online (Sandbox Code Playgroud)

python dictionary

41
推荐指数
4
解决办法
9万
查看次数

Python中的词典词典?

从另一个函数,我有这样的元组('falseName', 'realName', positionOfMistake),例如.('Milter', 'Miller', 4).我需要编写一个函数来创建这样的字典:

D={realName:{falseName:[positionOfMistake], falseName:[positionOfMistake]...}, 
   realName:{falseName:[positionOfMistake]...}...}
Run Code Online (Sandbox Code Playgroud)

该函数必须将字典和上面的元组作为参数.

我开始想这样的事情:

def addToNameDictionary(d, tup):
    dictionary={}
    tup=previousFunction(string)
    for element in tup:
        if not dictionary.has_key(element[1]):
            dictionary.append(element[1])
    elif:
        if ...
Run Code Online (Sandbox Code Playgroud)

但它不起作用,我有点被困在这里.

python dictionary

17
推荐指数
3
解决办法
10万
查看次数

用于检查2D嵌套内部字典中的键的单行代码

是否有单行方法来检查Python 2d dict是否具有内部键/值?

现在我做这样的事情:

if d.has_key(k1):
    if d[k1].has_key(k2): 
        # do something
Run Code Online (Sandbox Code Playgroud)

有一个更好的方法吗?

谢谢

python

14
推荐指数
3
解决办法
1万
查看次数

Python中dict.has_key和dict键之间的效率差异

可能重复:
'has_key()'或'in'?

在Python中,有两种方法可以决定a key是否在dict:

if dict.has_key(key)if key in dict

有人告诉我,第二个比第一个慢,因为in关键字使表达式在dict上迭代,所以它会比has_key替代更慢,显然使用hash来做出决定.

我非常怀疑差异,因为我认为Python足够聪明,可以indict某种哈希方式之前翻译关键字,我找不到任何关于此的正式声明.

那两者之间真的有效率差异吗?

谢谢.

python performance dictionary

7
推荐指数
1
解决办法
5209
查看次数

比较Python中连续元组列表的第一个元素

我有一个元组列表,每个元组包含两个元素.少数子列表的第一个元素很常见.我想比较这些子列表的第一个元素,并将第二个元素添加到一个列表中.这是我的清单:

myList=[(1,2),(1,3),(1,4),(1,5),(2,6),(2,7),(2,8),(3,9),(3,10)]
Run Code Online (Sandbox Code Playgroud)

我想列出一个列表,看起来像这样:`

NewList=[(2,3,4,5),(6,7,8),(9,10)]
Run Code Online (Sandbox Code Playgroud)

我希望如果有任何有效的方法.

python compare list append python-2.7

7
推荐指数
1
解决办法
1928
查看次数