我正在處理一些報告(計數),我必須爲不同的參數提取計數。非常簡單但乏味。是否可以在Python腳本中生成並執行Python代碼? [動態Python代碼]
一個參數查詢示例:
qCountsEmployee = (
"select count(*) from %s where EmployeeName is not null"
% (tablename)
)
CountsEmployee = execute_query(qCountsEmployee)
現在我有幾百個這樣的參數!
我所做的是:創建所有參數的列表,並使用快速Python腳本生成它們,然後複製文本,並把它在主腳本,避免了繁瑣的線條。
columnList = ['a', 'b', ............'zzzz']
for each in columnList:
print (
'q' + each + ' ='
+ '"select count(*) from %s where' + each
+ 'is not null" % (tablename)'
)
print each + ' = execute_query(' + 'q' + each + ')'
雖然這種方法,我在想,如果不是一個單獨的腳本生成的代碼行,並複製粘貼到主程序,我可以在主腳本直接生成他們,讓腳本把它們作爲線的代碼?這將使我的代碼更具可讀性。希望我有道理!謝謝...
你能解釋一下你的發電機解決方案嗎? – ThinkCode
它遍歷給定列表的內容併爲每個項目產生一個2元組。這些2元組然後[放在一起dict](http://docs.python.org/library/stdtypes.html#dict)。 – glglgl