删除python cod中的重复打印

2024-03-29 11:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

如何删除重复的打印语句问题并转到下一行。输出应该是这样的。你知道吗

当前我的打印输出如下所示:

Assign

Key, Summary , Reporter , Name , Resolution , Createdate , UpdateDate , Due , Team

Assign

Key, Summary , Reporter , Name , Resolution , Createdate , UpdateDate , Due , Team

...

我希望输出像这样,没有任何重复。

Assign

Key, Summary , Reporter , Name , Resolution , Createdate , UpdateDate , Due ,Team

Key, Summary , Reporter , Name , Resolution , Createdate , UpdateDate , Due , Team

...

我的代码是这样的

def assigne(username):
    responses = fetch(server + Ticket_Week + ' and assignee='+ username)

    duplicate = []
    object = {}
    for issue in responses['issues']:
        issue_fields = issue['fields']
        issue_status = issue_fields['status']
        issue_reporter = issue_fields['reporter']['displayName']
        issue_created = issue_fields['created']
        issue_updated = issue_fields['updated']
        issue_assign = 'Unassigned'
        issue_resolution = 'Unresolved'
        issue_due = 'null'
        issue_serviceteam = 'null'
        issue_createdate = datetime.datetime.strptime(issue_created[:-5], '%Y-%m-%dT%H:%M:%S.%f').strftime("%m/%d/%y")
        issue_updatedate = datetime.datetime.strptime(issue_updated[:-5], '%Y-%m-%dT%H:%M:%S.%f').strftime("%m/%d/%y")

        if issue_fields['assignee']:
            issue_assign = issue_fields['assignee']['displayName']
        if issue_fields['resolution']:
            issue_resolution = issue_fields['resolution']['name']
        if issue_fields.get('duedate', None):
            issue_due = issue_fields['duedate']
        if issue_fields.get('customfield_10506', None):
            issue_serviceteam = issue_fields['customfield_10506']['name']
        print(issue_assign)
        print(issue['key'], issue_fields['summary'], issue_reporter, issue_status['name'], issue_resolution, issue_createdate, issue_updatedate, issue_due, issue_serviceteam)

Tags: keynamefieldsdatetimeifreporterissuesummary
1条回答
网友
1楼 · 发布于 2024-03-29 11:24:41

如果您的问题是print(issue_assign),请引入布尔变量i

def assigne(username):

    responses = fetch(server + Ticket_Week + ' and assignee='+ username)

    duplicate = []
    object = {}
    i = True
    for issue in responses['issues']:
        issue_fields = issue['fields']
        issue_status = issue_fields['status']
        issue_reporter = issue_fields['reporter']['displayName']
        issue_created = issue_fields['created']
        issue_updated = issue_fields['updated']
        issue_assign = 'Unassigned'
        issue_resolution = 'Unresolved'
        issue_due = 'null'
        issue_serviceteam = 'null'
        issue_createdate = datetime.datetime.strptime(issue_created[:-5], '%Y-%m-%dT%H:%M:%S.%f').strftime("%m/%d/%y")
        issue_updatedate = datetime.datetime.strptime(issue_updated[:-5], '%Y-%m-%dT%H:%M:%S.%f').strftime("%m/%d/%y")

        if issue_fields['assignee']:
            issue_assign = issue_fields['assignee']['displayName']
        if issue_fields['resolution']:
            issue_resolution = issue_fields['resolution']['name']
        if issue_fields.get('duedate', None):
            issue_due = issue_fields['duedate']
        if issue_fields.get('customfield_10506', None):
            issue_serviceteam = issue_fields['customfield_10506']['name']



        if i:
            print(issue_assign)
            i = False
        print(issue['key'], issue_fields['summary'], issue_reporter, issue_status['name'], issue_resolution, issue_createdate, issue_updatedate, issue_due, issue_serviceteam)

编辑(基于评论):

如果你有多个用户,你有多种选择,但我要强调两个:

假设您的用户名是1、2、3和4:

usernames = [1, 2, 3, 4]
for user in usernames:
    assigne(user)

在我看来,另一个选择是更好的解决方案:

def assigne(usernames):
    if type(a) is not list:
        a = [a]
    for username in usernames:
        responses = fetch(server + Ticket_Week + ' and assignee='+ username)
        ...

通过这种方式,您可以将用户名作为单个用户名转发,也可以使用用户名列表调用函数。你知道吗

相关问题 更多 >