Форум сайта python.su
0
При создания словаря значение ключа берется целиком первая строка, а по сути должен создавать ключи из первой строки каждого столбца
Отредактировано Terma1234 (Янв. 4, 2017 15:00:57)
Прикреплённый файлы:
сам код.JPG (19,5 KБ)
Офлайн
0
Выполнение кода
Прикреплённый файлы:
выполнение.JPG (48,8 KБ)
Офлайн
0
Таблица
Прикреплённый файлы:
файл csv.JPG (28,7 KБ)
Офлайн
1
проблема с русификацией csv
в английской версии разделитель ,
в русской кажется ;
там разделитель дополнительно нужно указать как ‘;’
Офлайн
1
import csv with open('e1_table.csv', 'w', newline='') as csvfile: wr = csv.writer(csvfile, delimiter=';') wr.writerow(['A','B']) wr.writerow(['A1', 'B1']) wr.writerow(['A2', 'B2']) wr.writerow(['A3', 'B3'])
Офлайн
857
_nemo_CSV (comma separated values) - это определённый формат, который разделяет поля запятыми всегда. Все остальные форматы - это уже не CSV, но так как они похожи на CSV, то их называют CSV, хотя это и неправильно, так как они являются DSV (delimiter separated values).
в английской версии разделитель ,
в русской кажется ;
Отредактировано py.user.next (Янв. 5, 2017 02:58:18)
Офлайн
1
Уважаемый py.user.next,
ну вобщем это дебри уже,
проблема решается если delimer = ;
Как там может быть разделитель ‘,’ если
в русском экселе ‘,’ выполняет другие функции.
Отредактировано _nemo_ (Янв. 5, 2017 13:25:49)
Офлайн
857
_nemo_Вот смотри, ты ему написал код, который типа работает. А как ты можешь доказать, что этот код не потеряет втихушку какие-нибудь его данные? Вот речь вот про это. То, что он их через модуль csv начал разбирать, это ещё ничего не значит, он мог и ошибиться.
ну вобщем это дебри уже,
проблема решается если delimer = ;
_nemo_Эксель вообще не в CSV сохраняет, вот почитай, я всё не читал здесь, но там суть передаётся - что на Excel не надо равняться, потому что они (Microsoft) нарушают стандарты и лепят своё везде, где могут.
Как там может быть разделитель ‘,’ если
в русском экселе ‘,’ выполняет другие функции.
Отредактировано py.user.next (Янв. 5, 2017 14:07:40)
Офлайн
1
py.user.next
А как ты можешь доказать, что этот код не потеряет втихушку какие-нибудь его данные?
Эксель вообще не в CSV сохраняет, вот почитай
Офлайн
857
_nemo_Я как-то делал индусу одному фигню одну, наверное век теперь не забуду, так вот там надо было индусский язык древний переводить из Интернета вот в такой CSV, и там эти символы образовывали такой хаос, в этих полях были тексты целые на много строк и всё на юникодовом индусском. Там реально даже не поймёшь, если какой-то символ сотрётся. А CSV как раз может сохранять любые данные точно, что потом восстановишь из этого именно то, что и сохранял.
Что там можно потерять
_nemo_Вот именно, что ты думаешь, что там всё будет построчно всегда, а оно может хранить много строк в одном поле, формат CSV это разрешает и всё правильно хранит.
ячейки построчно, разделенные ‘;’
Отредактировано py.user.next (Янв. 5, 2017 15:58:44)
Офлайн