我有以下代码从用户获取字符串列表作为raw_input:
def Lookup(Dict_list):
print 'Please enter one alias per line. Leave blank when finished.'
user_alias = [alias for alias in iter (raw_input, '') ]
print user_alias
for row in Dict_list:
#print "row test"
#print row
if user_alias in row.values():
print row
for row in Dict_list:
if user_alias[0] == row['_cn6ca']:
email1 = row['_chk2m']
print email1
return email1
if user_alias[1] == row['_cn6ca']:
email2 = row['_chk2m']
print email2
return email2
if user_alias[2] == row['_cn6ca']:
email3 = row['_chk2m']
print email3
return email3
Lookup(Dict_list)
如何更改if user_alias == row ['_ cn6ca']:行,以便它会查找并返回用户输入的用户别名的每个用户的电子邮件? (这些键将保持不变)
我的目标是将这些已查找的电子邮件存储在以后的.csv
中以下是终端中生成的内容:
请在每行输入一个别名。完成后留空。 PaulDu Jeanell Twanna JaneyD 夏洛 Janessa
['PaulDu','Jeanell','Twanna','JaneyD','Charlot','Janessa'] 注销
[已完成处理]
答案 0 :(得分:1)
我已经剥离了一些细节,以便如果行(这是一个dict类型)的用户为其值为1,那么我们就会找到他们的电子邮件ID。
Dict_list = [{'nokey':'someval'},{'_cn6ca':'Twanna', '_chk2m': "twanna@xyz"},{'_cn6ca':'Jeanell', '_chk2m': "jeanell@xyz"}]
#print 'Please enter one alias per line. Leave blank when finished.'
#user_alias = [alias for alias in iter (raw_input, '') ]
user_alias = ['PaulDu', 'Jeanell', 'Twanna', 'JaneyD', 'Charlot','Janessa']
print user_alias
for user in user_alias:
for row in Dict_list:
if user in row.values():
print row
for user in user_alias:
for row in Dict_list:
if row.has_key('_cn6ca') and row.has_key('_chk2m'):
if user == row['_cn6ca']:
email = row['_chk2m']
print email
输出:
['PaulDu', 'Jeanell', 'Twanna', 'JaneyD', 'Charlot', 'Janessa']
{'_cn6ca': 'Jeanell', '_chk2m': 'jeanell@xyz'}
{'_cn6ca': 'Twanna', '_chk2m': 'twanna@xyz'}
jeanell@xyz
twanna@xyz