@ru_python

Страница 5536 из 9768
Tishka17
21.05.2018
05:11:31
Все ещё непонятно

N. M.
21.05.2018
07:10:11
Братка, тебе плохо?

Lulz
21.05.2018
07:10:39
скорую ему!

Google
Kirill
21.05.2018
07:15:12
Кто может объяснить почему открытие json через path = 'x.json' rec = [json.loads(line)for line in open(path] print(json.dumps(records) работает, а через with open('x.json') as f: data=json.load(f) for line in data: Print(line) Не работает

Поправка там x.json конечно

Romka
21.05.2018
07:18:21
json.loads

Lulz
21.05.2018
07:18:32
в каком моменте не работает? Print\loads

Kirill
21.05.2018
07:18:50
Loads не помогает

Lulz
21.05.2018
07:18:52
ошибка какая?

Kirill
21.05.2018
07:19:33
Json.decoder.jsondecodeerror

Romka
21.05.2018
07:20:08
на каком моменте?

Print\loads

Kirill
21.05.2018
07:20:43
Нет

До принта

Когда читает

Mikhail
21.05.2018
07:21:05
for line in open(...) читает файл построчно, каждая строка отправляется в json.loads второй вариант, передаешь в json.loads весь файл как json

Google
Mikhail
21.05.2018
07:21:14
покажи как выглядит файл

Димон
21.05.2018
07:21:28
А что это за жесть вообще?) CSV файл который ты построчно читаешь как JSON?

Mikhail
21.05.2018
07:21:38
видимо да ?

Kirill
21.05.2018
07:22:16
Да я исправил же)) там json

Димон
21.05.2018
07:22:53
Ну в любом случае судя по тому, что не работает, не один JSON ф файле, а много, по 1 на каждую строку

Содержимое файла в студию)

Romka
21.05.2018
07:23:13
только через пастебин

Kirill
21.05.2018
07:23:16
С load даёт ошибку Json.decoder.jsondecodeerror с loads 'the json object must be str..'

Димон
21.05.2018
07:23:47
А стопэ

Kirill
21.05.2018
07:24:55
20k-

+

И какой из двух опасный?

Димон
21.05.2018
07:25:52
Json.decoder.jsondecodeerror с loads 'the json object must be str.. - скорее всего значит, что у тебя там файловый указатель в двоичном режиме читается

Попробуй with open('x.csv', encoding='utf-8') as f:

Lulz
21.05.2018
07:27:36
либо f.read()

Kirill
21.05.2018
07:28:33
Encoding не помогает

Димон
21.05.2018
07:29:19
А если .load(f) поменять на .loads(f.read()) ?

Kirill
21.05.2018
07:29:23
Первый же вариант работает. В чем принципиальная разница?

Google
Димон
21.05.2018
07:31:16
С той же ошибкой?

Kirill
21.05.2018
07:31:27
В первом варианте он же пишет дамп мб в этом дело

Mikhail
21.05.2018
07:32:45
ты не правильно читаешь

Димон
21.05.2018
07:32:46
У тебя же ошибка в json.load, судя по её тексту

Mikhail
21.05.2018
07:32:53
у тебя в файле не json, а в каждой строчке json

Roman
21.05.2018
07:32:58
У тебя формат jsonа не верный в файле. Полюбому

Mikhail
21.05.2018
07:32:59
твой второй вариант читает файл как json

Димон
21.05.2018
07:33:01
Но ошибка не про это)

А так-то да

Lulz
21.05.2018
07:33:23
data = json.dumps(f.read()) data = json.loads(data)

Димон
21.05.2018
07:35:10
Ааа

блин в смысле

Точно

Он же там две ошибки пишет, а я нифига не понял

Lulz
21.05.2018
07:35:31
он пытается список загрузить как json

Kirill
21.05.2018
07:35:32
data = json.dumps(f.read()) data = json.loads(data)
Вот так работает! Но все равно надо разобраться.

Димон
21.05.2018
07:35:39
Да это понятно

Просто я с ошибкой json object must be str разбирался

Google
Димон
21.05.2018
07:35:54
А теперь спарсил его фразу

Он там пытался файловый объект в loads отдать

Mikhail
21.05.2018
07:36:12
да

Димон
21.05.2018
07:36:19
А так у него DecodeError и он не написал его текста, только класс

Чувак, у тебя в файле этом НЕ ОДИН json.

У тебя на каждой строчке по JSON'у

Его нельзя вторым способом загрузить.

Kirill
21.05.2018
07:36:55
Видимо я криво json из CSV сделал

Димон
21.05.2018
07:37:06
json из CSV это вообще мощно

Kirill
21.05.2018
07:37:10
Да да!

Mikhail
21.05.2018
07:37:17
я именно про это и сказал сразу у тебя два способа по разному читают файл

выбери какой-нибудь один

Димон
21.05.2018
07:38:19
Ну ты очевидно в json по одной строчке превратил, а между ними просто перенос

Kirill
21.05.2018
07:38:24
У меня json просто из кучи отдельных {}

Димон
21.05.2018
07:38:52
Оберни всё содержимое файла в [ ], а в конец каждой строки добавь запятую

Или читай построчно как в первом случае

Если у тебя не 20 миллионов строк или не 1000 запросов в секунду, или не intel 486, то вообще разницы по скорости не заметишь

Kirill
21.05.2018
07:40:09
Теперь надо разобраться почему так криво конвертит из CSV

Димон
21.05.2018
07:40:31
Потому что построчно

Каждая строка рассматривается как отдельный объект, а не весь файл целиком как массив объектов

Google
Kirill
21.05.2018
07:41:00
Через DictReader еще

Ну да он каждую строчку по отдельности пишет

Mikhail
21.05.2018
07:41:38
Теперь надо разобраться почему так криво конвертит из CSV
оно же не само так записывается, это ты так пишешь

Sergey
21.05.2018
08:18:51
подскажите celery выдает ошибку https://pastebin.com/Kru4ytR0 python 3.6.3 пробовал на 3.6.5 тоже самое

Некто
21.05.2018
08:23:19
Что ты делаешь перед тем как Celery выдает данный трейс? Без контекста сложно.

Sergey
21.05.2018
08:23:49
я хз че такое, все перегуглил, нигче ничего нет подобного

Некто
21.05.2018
08:32:26
https://github.com/celery/celery/issues/4321

Смотри предпоследние комменты

В самый конец мотай, обрати внимание на Трейс, ошибка в kombu

Sergey
21.05.2018
08:37:53
В самый конец мотай, обрати внимание на Трейс, ошибка в kombu
да, оказывается дело в kombu==4.2.0 устанвил 4.1.0 все норм встало

Некто
21.05.2018
09:20:11
Гуд.

Страница 5536 из 9768