看起来很简单,但我认为该对象将超出范围! 我有一个函数来构造一个词典 -从python无法访问的函数返回的字典
def fill_dictionary(d_list,n_pat):
my_dict = {}
my_text = []
my_list = []
f_list = []
tmp_list = []
for word in d_list:
if not(re.search(r'\#',word)) and not (re.search(r'ecl_attribute_def\ ecl_job_attr_def\[\]',word)):
tmp_list.append(word)
my_text = ''.join(tmp_list)
l = []
l = my_text.split(";")
for x in l:
my_list =[item.strip() for item in x.split("|")]
my_dict = {my_list[0]:my_list[1:]}
return my_dict
,并从main函数被调用 -
attr_d = {}
for line in tmplf:
skipped_blocks_ecl_tmpl.append(line)
attr_d = fill_dictionary(skipped_blocks_ecl,new_pattern)
但现在某处我想用这本词典(attr_d)在替换值文件。
for line in skipped_blocks_ecl:
for i, j in attr_d.iteritems():
print i, "=" ,j
if line == attr_d[i]:
但attr_d在这里似乎没有任何价值,任何人都可以请帮忙吗?
在你的第一个代码块中,你有'''用于x中的l:''',其中'''l'''是从哪里来的? – wnnmaw
你能否提供第二部分和第三部分之间的代码,这个问题可能就在那里。 – JelteF
不,我已经从函数中删除了一些代码,该函数正常工作,它返回的字典以及它存储在attr_d因为我打印,可以看到填充的字典 – user3203406