在python字典中迭代单个维度
可能重复: 我创建了一个二维词典 myaddresses['john','smith']=地址1 myaddresses['john','doe']=地址2 如何在时尚中迭代一维在python字典中迭代单个维度,python,key,loops,dimension,Python,Key,Loops,Dimension,可能重复: 我创建了一个二维词典 myaddresses['john','smith']=地址1 myaddresses['john','doe']=地址2 如何在时尚中迭代一维 for key in myaddresses.keys('john'): 它会迭代所有键,因此这可能不是最有效的方法,但我将说明一个显而易见的方法,以防您忽略它: for key in myaddresses.keys(): if key[0] == 'john': print myaddr
for key in myaddresses.keys('john'):
它会迭代所有键,因此这可能不是最有效的方法,但我将说明一个显而易见的方法,以防您忽略它:
for key in myaddresses.keys():
if key[0] == 'john':
print myaddresses[key]
它会迭代所有键,因此这可能不是最有效的方法,但我将说明一个显而易见的方法,以防您忽略它:
for key in myaddresses.keys():
if key[0] == 'john':
print myaddresses[key]
尝试:
尝试:
坏消息:至少你不能直接这么做。您所做的不是一个二维dict,而是一个以元组字符串对作为键的dict,并且只有键的散列值通常与哈希表一起使用。您需要的是顺序查找,即:
for key, val in my_dict.items():
# no garantee we have string pair as key here
try:
firstname, lastname = key
except ValueError:
# not a pair...
continue
# this would require another try/except block since
# equality test on different types can raise anything
# but let's pretend it's ok :-/
if firstname == "john":
do_something_with(key, val)
不用说,它有点挫败了使用口述错误的全部意义。。。使用适当的关系数据库怎么样 坏消息:至少你不能直接这么做。您所做的不是一个二维dict,而是一个以元组字符串对作为键的dict,并且只有键的散列值通常与哈希表一起使用。您需要的是顺序查找,即:
for key, val in my_dict.items():
# no garantee we have string pair as key here
try:
firstname, lastname = key
except ValueError:
# not a pair...
continue
# this would require another try/except block since
# equality test on different types can raise anything
# but let's pretend it's ok :-/
if firstname == "john":
do_something_with(key, val)
不用说,它有点挫败了使用口述错误的全部意义。。。使用适当的关系数据库怎么样 我正在解析一个文件并计算、合计、测试是否存在等等。如果有一种语法可以使用正则表达式获取密钥,而不使用整个密钥列表并进行解析,因为它可能很大,或者可能是创建哈希的另一种语法,即myhash['apple']['green']用于myhash['apple']中的密钥,我正在解析一个文件并计算,合计,测试是否存在等。如果有一种语法可以使用正则表达式获取密钥,而不使用整个密钥列表并进行解析,因为它可能很大,或者可能是用于创建哈希的不同语法,例如myhash['apple']['green']对于myhash['apple']中的密钥,你真的没有二维字典,你有一个一维的,由一对字符串组成的,所以你不可能做你想做的事情,除非你记录下所有可能的第二部分,每一个前半部分的密钥对。最好是有一个二维的dict-of-dict。你真的没有一个二维字典,你有一个由一对字符串组成的一维字典……因此,除非你记录下每一个添加的键对的前半部分的所有可能的后半部分,否则你不可能做你想做的事情。最好是有一个二维的dict。