Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python文件中,如何通过键名的值获取键名?_Python_Import - Fatal编程技术网

在python文件中,如何通过键名的值获取键名?

在python文件中,如何通过键名的值获取键名?,python,import,Python,Import,我有一个名为parameters.py的python文件: good = '100' bad = '110' ok = '120' 我想导入此文件,并根据其值查找密钥名称 比如: import parameters for k, v in parameters.iteritems(): if v == '110': print str(k) 这个不太有效的方法没有成员iteritems 谢谢你的帮助 您可以循环使用dirparameters来获取键,或varspara

我有一个名为parameters.py的python文件:

good = '100'
bad = '110'
ok = '120'
我想导入此文件,并根据其值查找密钥名称

比如:

import parameters
for k, v in parameters.iteritems():
    if v == '110':
        print str(k)
这个不太有效的方法没有成员iteritems

谢谢你的帮助

您可以循环使用dirparameters来获取键,或varsparameters.iteritems。不过,您必须跳过一些成员:

>>> dir(settings)
['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'bad', 'good', 'ok']
对于实际使用,我建议将good、bad和ok包装在存储在parameters模块中的dict中:


varsparameters将为您提供一个字典,其中包含模块中所有顶级定义的键值对。正如larsmans所指出的,您必须跳过一些,因为它将包括uu doc和其他特殊变量。

+1表示变量;我取代了直接使用dict的建议。为什么不将这些值分组到一个字典中呢?这个文件被很多视图使用,不能重新考虑。谢谢。dir和VAR之间有什么区别?vars return list和dir return dict?@eligro:事实上,反过来说。
# parameters.py

HAM = {  # or whatever this represents
    good: '100',
    bad: '110',
    ok: '120',
}