[英]Python - Looping through a set of items in a list
我有以下查詢從JIRA中提取一些數據並將其保存到csv。 然而,我正試圖通過一系列項目。 我看到最新項目得到了保存,而不是所有項目都在循環中傳遞。
以下是我正在嘗試執行的操作:
projects = ['project_a','project_b']
for project in projects:
issues = jira.search_issues('project= ' + project)
result = []
for value in issues:
value = value
timeSpentSeconds = i.timeSpentSeconds
timeSpent = i.timeSpent
updated = i.updated
started = i.started
author = i.author
dict_ = {'value': value,
'timeSpent': timeSpent,
'updated': updated,
'started': started,
'author': author}
result.append(dict_)
df = pd.DataFrame(result)
df.to_csv('/Desktop/file.csv')
你在每個循環df.to_csv('/Desktop/file.csv')
覆蓋數據幀。 每次,您在文件中編寫新項目並刪除舊項目。
您應該在開始迭代項目之前定義結果。 否則,您可以為每個項目創建一個csv文件。
此外,在頂級循環結束時創建和保存數據幀會更有效。
df.to_csv('/Desktop/file.csv', mode='a')
寫入.to_csv的默認模式。 你必須改變它才能追加。 如果你想這樣做。
更好的解決方案是制作整個數據幀,然后將其保存到想要的文件
projects = ['project_a','project_b']
result = []
for project in projects:
issues = jira.search_issues('project= ' + project, maxResults=False, fields="worklog")
for value in issues:
for i in value.fields.worklog.worklogs:
value = value
timeSpentSeconds = i.timeSpentSeconds
timeSpent = i.timeSpent
updated = i.updated
started = i.started
author = i.author
dict_ = {'value': value,
'timeSpent': timeSpent,
'updated': updated,
'started': started,
'author': author}
result.append(dict_)
df = pd.DataFrame(result)
df.to_csv('/Desktop/file.csv')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.