Форум сайта python.su
0
Всем привет.
Кто может подсказать? Как можно записать 2 lista в 1 csv-файл. В 1 столбик 1 list в 2 столбик 2 list
Как я получаю список:
import pyad.adgroup import csv list_login_user= [] list_FIO_user = [] w = pyad.adgroup.ADGroup.from_cn("Имя Группы") for m in w.get_members(): list_login_user.append(m.SamAccountName) list_FIO_user.append(m.name) print(list_login_user) # with open('test.csv', 'w', newline='') as login_user: a = csv.writer(login_user, delimiter=',') for login in list_login_user: a.writerow([login])
Офлайн
221
например как то так
for data_row in zip(list_login_user, list_FIO_user): a.writerow(data_row)
Офлайн
0
JOHN_16
Спасибо за ответ. Я тоже так пробовал. Уже просто сбился с попыток.
по варианту выше получаю логин и ФИО в 1 ячейке(А1, А2, А3), а не в столбце 1 логин, а 2 ФИО
#####
Можно конечно через эксел это делать. НО это как-то “неочень”
Отредактировано EugeneK (Янв. 24, 2019 13:42:37)
Офлайн
0
Вопрос решен проблема была в list separator в региональных настройках ОС
Где менять.
https://resrequest.helpspot.com/index.php?pg=kb.page&id=279
for data_row in zip(list_login_user, list_FIO_user): a.writerow(data_row)
Офлайн
221
EugeneKвы сами указали разделитель запятую. Если у вас заранее известно что запятая не подходит используйте другой, как вариант точка с запятой достаточно популярен.
a = csv.writer(login_user, delimiter=',')
Офлайн
221
менять настройки ОС это вверх неразумности. Тем более что ексель и подобные программы при открытии файла предлагают выбрать разделитель и делают предпросмотр. А если на принимаемой стороне как то иначе используют эти файлы, то договаривайтесь о формате.
Офлайн
0
JOHN_16
Спасибо за подсказку.
А то как-то костылями тоже не хотелось это делать. Вернул все назад. Поменял только сам разделитель, на правильный. А то опыта большого нет при работе с CSV. Да и судьба у него точно не простая хоть и есть RFC, но и вроде его и нет.
Офлайн