Как записать ie для l oop out в файл csv? - PullRequest
3 голосов
/ 24 апреля 2020

У меня есть function, который возвращает list ..

def give_list(number, type, index): 
        list_ = []
        do something 
    return list_

Вывод этой функции в следующем формате;

['Training/1.png', 3450, 3865, 1517, 1789, 'GOOD']

Теперь я использую a для l oop, чтобы получить больше списка, как указано выше, и записать в .csv файл ..

for key, value in dic_.items():
    list_ = give_list(key, "CC", 2)
    df = pd.DataFrame(list_)
    df.to_csv('/path/to/write/testFile.csv', sep=',') 

Например, мой l oop сгенерировать следующий вывод:

['Training/1.png', 1255, 4556, 1455, 1789, 'GOOD']
['Training/2.png', 4555, 2899, 6989, 1586, 'BAD']
['Training/3.png', 4744, 2478, 9862, 1755, 'BAD']
['Training/4.png', 3450, 6989, 2455, 3866, 'GOOD']

My df.to_csv('/path/to/write/testFile.csv', sep=',') внутри для l oop не помогает мне записать вывод в файл .csv. Как я могу это сделать? Мне нужно увидеть вывод, как это в файле .csv;

'Training/1.png', 1255, 4556, 1455, 1789, 'GOOD'
'Training/2.png', 4555, 2899, 6989, 1586, 'BAD'
'Training/3.png', 4744, 2478, 9862, 1755, 'BAD'
'Training/4.png', 3450, 6989, 2455, 3866, 'GOOD'

1 Ответ

2 голосов
/ 24 апреля 2020

попробуйте это:

import csv 
payload = [give_list(key, "CC", 2) for key in dic_] # create list of lists(rows) payload
with open('/path/to/write/testFile.csv', "w", newline="") as f:
    writer = csv.writer(f)
    writer.writerows(payload)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...