我有以下代码,已从ini成功读取了各节及其对应的值。现在,我正在尝试仅输出满足特定条件的结果,但是在获得正确输出方面存在一些问题,希望能对我如何做到这一点有所了解
ini file -
[Issue_1]
close_major = some jql
#contains all problems with major priority
[Issue_2]
close_minor = some jql
#contains all problems with minor priority
config = configparser.ConfigParser()
config.read('test.ini')
result = dict()
for section in config.sections():
ticket_results = list()
result[section] = ticket_results
for desc, jql in config.items(section):
results = jira.search_issues(jql, startAt=0, maxResults=1000)
for i in results:
dateformat = '%Y-%m-%dT%H:%M:%S.%f+0000'
ticket_end_time = datetime.strptime(i.fields.customfield_xxx, dateformat)
ticket_start_time = datetime.strptime(i.fields.customfield_zzz, dateformat)
issue_time = ticket_end_time-ticket_start_time
issue_time_new = issue_time.total_seconds()
# Try to get the issues where issue time is less than 2days for Issue_1 and 5days for Issue_2
if(config.items('Issue_1')):
if issue_time_new < 172800:
ticket_results.append(i.key)
elif(config.items('Issue_2')):
if issue_time_new < 432000:
ticket_results.append(i.key)
print(result)
看起来我没有正确循环,假设正确的输出应该是Issue_1的5个结果和Issue_2的4个
我正在为Issue_2获得6个结果,因为它是从Issue_1而不是Issue_2读取ini部分
任何帮助将不胜感激
答案 0 :(得分:0)
找出我做错了什么地方-
在这种情况下,应该只使用section而不是使用if(config.items('Issue_1'))...
if 'Issue_1' in section and issue_time_new < 172800:
ticket_results.append(i.key)