阅读ini的特定部分

时间:2019-08-13 18:53:12

标签: python-3.x

我有以下代码,已从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部分

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

找出我做错了什么地方-

在这种情况下,应该只使用section而不是使用if(config.items('Issue_1'))...

if 'Issue_1' in section and issue_time_new < 172800:
    ticket_results.append(i.key)
相关问题