如何使用 csvwriter 在 Python 中编写 headers 列表?

How to write headers list in Python using csvwriter?

我正在尝试使用以下代码

cursor = connect.cursor()
    sqlSelect = "SELECT to_char(t.create_date, 'DD-MM-YYYY') AS CreatedDate,t.ticket_number AS TicketNo,p.name AS Priority,t.person_name AS Person,t.subject AS Subject,s.name AS State, to_char(t.close_date, 'DD-MM-YYYY') AS ClosedDate FROM website_support_ticket t INNER JOIN website_support_ticket_priority p ON p.id = t.priority_id INNER JOIN website_support_ticket_state s ON s.id = t.state_id ORDER BY CreatedDate"
    try:
        cursor.execute(sqlSelect)
        results = cursor.fetchall()
        headers = [i[0] for i in cursor.description]
        csvFile = csv.writer(open(filePath + fileName, 'w'),
                             delimiter=',', lineterminator='\r\n',
                             quoting=csv.QUOTE_ALL, escapechar='\')

        csvFile.writerows(headers)
        csvFile.writerows(results)

当我打印 headers 输出就像

('headers', ['createddate', 'ticketno', 'priority', 'person', 'subject', 'state', 'closeddate'])

和 headers 只是不像 headers 那样写入 CSV,

关于如何仅在顶部第一行打印 header 有什么建议吗?截至目前,header 的每个字母都进入不同的行。

任何建议或修复都会很有帮助。

尝试:

headers = ", ".join(cursor.description)

不确定 cursor.description 是否作为列表传回。

快速检查我自己的东西,它以元组的形式返回。这会搞砸上面的内容。

headers = ", ".join([i[0] for i in cursor.description])

使用 writerow 添加作为列表传递的单行:

csvFile.writerow(headers)