我正在学习python,并希望了解我的代码的正确pythonic方法。
我正在编写一个实用程序
我有代码工作 - 我有一些整理和一些精简 - 但想了解最佳实践方法。
所以,流程如下:
create global dictionary
report_outer_loop()
print_dict()
report_outer_loop
open the list of reports
for each item in list (the item contains report name, search term, etc)
call report_inner_loop (item)
report_inner_loop (item)
get reportname from item
get search term from item
open report
for each line in report
find search_term
update dictionary with extracted data
print_dict()
for each item in dictionary
write key, value to file
所以,你可以看到我有一个由内循环和print_dict访问的全局字典。
我的问题是:这是正确的pythonic方法吗?
或者我不应该将其创建为全局,而是将其传递给outer_loop,然后传递给内部,然后传递打印功能?
还是有更好的方法?
答案 0 :(得分:2)
我会在report_outer_loop
中创建一个本地字典,将其传递给report_inner_loop
并在运行report_outer_loop
后返回该字典。
答案 1 :(得分:0)
您可以继承dict
,将report_outer_loop
添加为append_reports
功能。然后,您只需使用self.append(extracted_data)
。