Size: a a a

2021 June 27

А

Андрей in rannts
условно вот такой список
[172269568, 422031362, 172818440]
источник

A🍊

Andrey 🍊 in rannts
row — это же список, все элементы в строке
источник

A🍊

Andrey 🍊 in rannts
Ну то есть, если нам нужен цсв вида
Name;FamName;Age
Ivan;Ivanov;25
Pyotr;Petrov;35
То будет writerow(["Ivan", "Ivanov", 25]) для второго ряда, например
источник

A🍊

Andrey 🍊 in rannts
Но вообще, если в текстовике ничего, кроме чисел, то зачем цсв?
file.write("\n".join(list_uniq_result_users))
или  даже file.writelines(list_uniq_result_users)
источник

А

Андрей in rannts
write() argument must be str, not int
источник

A🍊

Andrey 🍊 in rannts
file.write("\n".join(list_uniq_result_users)) — это вот тут?
источник

A🍊

Andrey 🍊 in rannts
Блин, ну я ненастоящий сварщик, чёт думал, что join сам приведёт. Тогда в голову приходят только костыли вида file.writelines([str(x) for x in list_uniq_result_users]). Но пусть лучше погромисты скажут, как надо.
источник

А

Андрей in rannts
такой вариант есть, например, пройтись по каждому элементу и изменить его тип, но элементов может быть несколько миллионов)
источник

A🍊

Andrey 🍊 in rannts
Мне кажется, это всё равно дешевле, чем csv дёргать
источник

А

Андрей in rannts
может, есть более красивое решение)
источник

VR

Victor Ryabinin in rannts
можно поменять тип для каждого
file.write("\n".join(str(i) for i in list_uniq_result_users))
можно для всей строки заменить ", " на перенос
file.write(str(list_uniq_result_users)[1:-1].replace(", ","\n"))
можно сохранить json в файл, можно сохранить в базу, хз как полностью задача звучит и для чего это надо
источник

А

Андрей in rannts
снова выручил) Первый способ четко заработал. Спасибо!
источник
2021 June 28

KK

Kirill (Cykooz) Kuzm... in rannts
Для миллиона элементов это не самый удачный вариант. Оно ведь соберёт в памяти строку со всеми числами прежде чем записать в файл.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Вот так можно:

for num in list_results:
   file.write(f'{num}\n')
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Надеюсь файлы в питоне с буферизацией работают, а это это может работать дольше чем могло бы быть.
источник

VR

Victor Ryabinin in rannts
Но тут к файлу будет обращение млн раз?
источник

VR

Victor Ryabinin in rannts
Можно сделать эксперимент и засечь, что работает быстрее
источник

VR

Victor Ryabinin in rannts
Но мне лень)
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Если нет буферизации у простых файлов, то наверное есть обёртка для этого из коробки.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
А какой прок от скорости, если оно будет память выжирать.
источник