powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python. Пустые строки
10 сообщений из 10, страница 1 из 1
Python. Пустые строки
    #39875986
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

Есть код, который создает csv-файл с данными.
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
import csv
data = [
    {'name': 'Иванов', 'rating': '1'},
    {'name': 'Петров', 'rating': '2'},
    {'name': 'Сидоров', 'rating': '3'},
]
with open('data.csv', 'wt') as ContextManager:
    out = csv.DictWriter(ContextManager, ['name', 'rating'])
    out.writeheader()
    out.writerows(data)

В результате создается csv-файл, но с пустыми строками. См. скриншот.

Почему появляются пустые строки? Как правильно написать?
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876013
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CSV - это текстовый файл.
Откройте полученный файл в текстовом редакторе и проверьте, есть там пустые строки или нет.
Если пустых строк не найдете - смотрите настройки импорта в используемой Вами программе-смотрелке.
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876025
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleОткройте полученный файл в текстовом редакторе и проверьте, есть там пустые строки или нет.Пустых нет.
Если пустых строк не найдете - смотрите настройки импорта в используемой Вами программе-смотрелке.Вы имеете ввиду юпитер или excel?
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876027
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ferzmikkВы имеете ввиду юпитер или excel?То, откуда скриншот.
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876288
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleсмотрите настройки импорта в используемой Вами программе-смотрелке.В Microsoft Excel не нашел где это настраивается.

В коде добавил атрибут
Код: python
1.
with open('data.csv', 'wt', newline ='') as ContextManager:

Теперь нет пустых строк.
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876302
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это уже шаманство какое-то.
Любопытства ради протестировал оба примера, с newline ='' и без. Созданные файлы ни на байт не различаются и выглядят так:
Код: php
1.
2.
3.
4.
5.
6.
$ hexdump -C data.csv 
00000000  6e 61 6d 65 2c 72 61 74  69 6e 67 0d 0a d0 98 d0  |name,rating.....|
00000010  b2 d0 b0 d0 bd d0 be d0  b2 2c 31 0d 0a d0 9f d0  |.........,1.....|
00000020  b5 d1 82 d1 80 d0 be d0  b2 2c 32 0d 0a d0 a1 d0  |.........,2.....|
00000030  b8 d0 b4 d0 be d1 80 d0  be d0 b2 2c 33 0d 0a     |...........,3..|
0000003f



Если что, тестировал на
Код: php
1.
2.
$ python3 -V
Python 3.5.4
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876425
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleЭто уже шаманство какое-то.Это от Юпитера зависит?

Если что, тестировал на
Код: php
1.
2.
$ python3 -V
Python 3.5.4

В юпитере и IDLE (Python 3.8 32-bit) ругается на символ $. При установке ставил галочку "Add python to PATH".

Почему ругается?
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876452
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ferzmikkЭто от Юпитера зависит?Понятия не имею. Может быть этот Юпитер какие-то особые символы конца строки делает вместо стандартного CRLF (коды 0d 0a). Посмотрите полученный файл какой-нибудь HEX-смотрелкой, чтобы не гадать, где проблема - при создании файла или при просмотре в екселе.

ferzmikkВ юпитере и IDLE (Python 3.8 32-bit) ругается на символ $.Уххх, как всё завернуто... По мне так без выпендронов проще - набрать код в текстовом редакторе, запустить в консоли, там же и дамп посмотреть. Символ бакса - стандартное приглашение к вводу в консоли.
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876593
ferzmikk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Я правильно понимаю, что знак доллара в юпитере или IDLE (Python 3.8 32-bit) не нужно вводить, а также это для операционки как Mac, Linux?


Я пока еще не силен в системном администрировании. У меня операционка windows. Запустил cmd. Пытаюсь запустить команду
Код: python
1.
$ python3 -V

Со знаком доллара и без. Результат отображен на скриншоте. Что не так делаю?
...
Рейтинг: 0 / 0
Python. Пустые строки
    #39876609
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ferzmikkЯ пока еще не силен в системном администрировании.Каким тут боком администрирование? Это же основы запуска программ. Не путайте с мышководством и "дабл-кликом".

ferzmikkУ меня операционка windows. Запустил cmd. Пытаюсь запустить командуЗапустили команду python без аргументов. Вполне ожидаемо, что питон открыл свою интерактивную консоль.
Как работать в консоли питона - читайте в справке по питону.
Как работать в cmd... Ну тоже где-то почитать можно, хотя бы и в виндовой справке. Приглашение к вводу там угловая скобка ">".
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Python. Пустые строки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]