Python-循环不同的值并将其传递到变量中
我有一个Python脚本,可以从JIRA中提取所有字段。我在JIRA中有多个项目,每个项目中的列集是不同的。因此,我有下面的脚本,工作得很好Python-循环不同的值并将其传递到变量中,python,Python,我有一个Python脚本,可以从JIRA中提取所有字段。我在JIRA中有多个项目,每个项目中的列集是不同的。因此,我有下面的脚本,工作得很好 ## Login to Jira jira = JIRA(basic_auth=('login@login.com', 'password'), options={'server': 'https://company.atlassian.net'}) # Pulling Proj_A tickets issues = jira.search_issue
## Login to Jira
jira = JIRA(basic_auth=('login@login.com', 'password'), options={'server': 'https://company.atlassian.net'})
# Pulling Proj_A tickets
issues = jira.search_issues('project= Proj_A',maxResults=False) ## Get Proj_A tickets
## Create the full df by normalizing the output
issue_list = []
for i in range(len(issues)):
result = json_normalize(issues[i].raw['fields'])
result['issue_id'] = issues[i]
result['issue_link'] = 'https://company.atlassian.net/browse/' + str(issues[i])
issue_list.append(result)
final_issue_df_a = pd.concat(issue_list, axis=0, sort=True).reset_index()
# Pulling Proj_B tickets
issues = jira.search_issues('project= Proj_B',maxResults=False) ## Get Proj_B tickets
## Create the full df by normalizing the output
issue_list = []
for i in range(len(issues)):
result = json_normalize(issues[i].raw['fields'])
result['issue_id'] = issues[i]
result['issue_link'] = 'https://company.atlassian.net/browse/' + str(issues[i])
issue_list.append(result)
final_issue_df_b = pd.concat(issue_list, axis=0, sort=True).reset_index()
# Concatenating fields from the 2 projects into one single dataframe
Final_DF = pd.concat([final_issue_df_a,final_issue_df_b], axis=0, ignore_index=True)
上面的代码工作得很好。现在,我正在尝试优化脚本,其中我正在尝试传递一个包含所有项目列表的循环,如下所示:
project = [Proj_A,Proj_B,Proj_C..]
这将传递到第一行
(issues = jira.search_issues('project=',maxResults=False))
并迭代每个项目,并提取存储在最终数据帧中的相关字段
有人能帮忙吗。谢谢您可以这样做:
projects = ['Proj_A', 'Proj_B', 'Proj_C']
final_df_list = []
for project in projects:
issues = jira.search_issues('project= '+project, maxResults=False)
# Rest of the code processing the issues obtained above
final_issue_df_x = pd.concat(issue_list, axis=0, sort=True).reset_index()
final_df_list.append(final_issue_df_x)
Final_DF = pd.concat(final_df_list, axis=0, ignore_index=True)
你可以这样做:
projects = ['Proj_A', 'Proj_B', 'Proj_C']
final_df_list = []
for project in projects:
issues = jira.search_issues('project= '+project, maxResults=False)
# Rest of the code processing the issues obtained above
final_issue_df_x = pd.concat(issue_list, axis=0, sort=True).reset_index()
final_df_list.append(final_issue_df_x)
Final_DF = pd.concat(final_df_list, axis=0, ignore_index=True)
使用项目api获取JIRA中的项目列表。然后从返回的每个项目中提取项目名称
r = requests.get('https://<jira>/rest/api/2/project', auth=('username', 'password'), verify=False)
projects = r.json()
#Get name of each project
for i in projects:
print i['name']
r=requests.get('https:///rest/api/2/project,auth=('username','password'),verify=False)
projects=r.json()
#获取每个项目的名称
对于项目中的i:
打印i['name']
使用项目api获取JIRA中的项目列表。然后从返回的每个项目中提取项目名称
r = requests.get('https://<jira>/rest/api/2/project', auth=('username', 'password'), verify=False)
projects = r.json()
#Get name of each project
for i in projects:
print i['name']
r=requests.get('https:///rest/api/2/project,auth=('username','password'),verify=False)
projects=r.json()
#获取每个项目的名称
对于项目中的i:
打印i['name']
问题出在哪里……我不明白这个问题。@Rakesh,我正在尝试重建上面的代码,其中我有一个包含所有项目名称的列表(比如说project)。然后从该列表中传递值,而不是分别为每个项目编写相同的代码。希望这能有所帮助。问题是什么……我不明白这个问题。@Rakesh,我正在尝试重建上面的代码,其中我有一个包含所有项目名称的列表(我们称之为project)。然后从该列表中传递值,而不是分别为每个项目编写相同的代码。希望这有帮助。