Alex
Пользовался очень долго pdb и пайчармовский дебаггер в разы лучше и продуктивнее
ах мое сообщение адресовано было участнику выше с бесплатным чармом
Tishka17
То ли я слишком хорошо пишу, то ли у меня слишком простые проекты, то ли хз что ещё, но я сто лет не юзал дебаггер
Tishka17
дебаг через print()?
Ага. И тесты
Alex
мне даже лень пайчарм с докером настраивать
Tishka17
Я вообще не узнавал, но кажется, пайчарм не умеет наши сборки отлаживать
Alexey
Имею такую строку: b'[{"ID": 1, "Name": "one"}', b'{"Id": 2, "Name": "two"}']' Реплейсю её к такому виду: [{"ID": 1, "Name": "one"}, {"Id": 2, "Name": "two"}] Т.е. выглядит как массив, но это строка. Можно её по быстрому переделать в нормальный массив?
Alexander
import json data = json.loads(your_string)
Alexey
Давай начнем с того откуда ты ее получил
прост на вход мне поступают такие вот битые массивы от чужого сервиса
Alexander
Тогда это обычный json
c
есть, забыл дописать
а скопировать никак было
Alexander
есть, забыл дописать
Вот сервис для проверки корректности json-строки - https://jsonlint.com
Alexey
ага спс!
Alexey
а вот эту х-ню в нормальный текст как перекодировать?) "Value":"\xd0\xb8\xd0\xbd\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x80\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9" я чет не вдуплю это в какой кодировке вообще
Hauve
А encode в байтики?
Alexey
ага спс
Alexander
А декоде умеет само разобраться что за кодировка?
Dogma
а вот эту х-ню в нормальный текст как перекодировать?) "Value":"\xd0\xb8\xd0\xbd\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x80\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9" я чет не вдуплю это в какой кодировке вообще
А это не хуйня а обычный текст. Он просто в контейнере, репр которого приводит ваши кодировки к тому виду, в котором они хранятся.
Dogma
Тебе нихуя не надо преобразовывать
Alexey
ну я прост беру эту х-ню уже такую и мне внутри теста надо с ней играться только не в таком виде
Alexey
надо внутри теста уже понимать че там на самом деле внутри
Dogma
Language: py3 Source: print("Value \xd0\xb8\xd0\xbd\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x80\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9") Result: Value инорстранный
Dogma
Вот кстати, ты уже умудрился накосячить с данными своими энкодами декодами
Vadim
Если я в группе вк бота сделаю, он может там сам первым писать людям? Слышал там нововведения и боты теперь ничего не могут сами писать первыми Простите немного оффтоп, но все же знают боты пишут на пайтоне ;)
Проксимов
Хотя я хз
Проксимов
Спроси в группе по ВК апи
Vadim
Я на с# бота писал и что?
Ты не такой как все
Андрей
Ты не такой как все
Не Просто работа с апи к языку не относится, вот и все
Amaro
Language: py3 Source: print("Value \xd0\xb8\xd0\xbd\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x80\xd0\xb0\xd0\xbd\xd0\xbd\xd1\x8b\xd0\xb9") Result: Value инорстранный
>>> bytes("\xd0\xb8\xd0\xbd\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x80\xd0\xb0\xd0\ xbd\xd0\xbd\xd1\x8b\xd0\xb9","raw_unicode_escape").decode('utf-8') 'инорстранный'
Anonymous
BURN THE HERETIC!
кто писал ботов для телеграмма на питоне?
Anonymous
хах я пишу)
Андрей
По поводо telegrama ботов Есть те кто работал с библеотекой telethon? Вопрос по созданию декораторов, обработчика событий
Anonymous
пытаюсь запустить телеграм бота а мне ошибку выдает. как исправить?
Anonymous
dee@dee-Mac:~$ python3 Загрузки/telega.py Traceback (most recent call last): File "Загрузки/telega.py", line 2, in <module> import telebot ModuleNotFoundError: No module named 'telebot'
Андрей
Вы установили через pip telebot?
Anonymous
уже сделал
Anonymous
ls -al
Иван
Как бы вы делали такую таску: Есть файл с числами, нужно ремувнуть дубликаты чисел Файл может быть очень большой, вплоть до 10 * RAM
Aragaer
числа по 1 в строке?
Aragaer
как-нибудь упорядочены?
Иван
По 1 в строке, допустим
Иван
Не упорядочены
Aragaer
насколько много в принципе различных чисел?
Aragaer
они целые?
Hauve
Читать строками определённое количество и удалять дубликаты. Есть же шанс, что они вначале повторяются? Я не про в питоне, потому мысль примитивная хд
Иван
Целые, позитивные Все в пределах 2**31 - 1
Aragaer
ну тогда можно обойтись всего 512 мегами оперативки 8)
Aragaer
можно изменить порядок чисел?
Иван
Думаю, да
Aragaer
тогда все просто
Иван
ну тогда можно обойтись всего 512 мегами оперативки 8)
Читать чанками, удалять дубликаты И сохранять в файл?
Aragaer
выделяешь 512 метров оперативки. Это 2**32 бит
Aragaer
дальше просто читаешь числа и для каждого числа выставляешь в единичку соответствующий бит
Aragaer
в конце проходишь по всем битам и выписываешь номера тех, у кого значение 1
Иван
Не дошло Что значит "выставляешь в единичку соответствующий бит"?
Hauve
А до меня дошло
Hauve
Не додумался бы сам
Aragaer
ну вот попалось тебе число 0. Тогда идешь в первый байт из этих 512 мегов и там во младшем бите ставишь 1
🍁 Jaŭhien
Неплохо
Aragaer
насколько мне известно, в плюсах есть готовый bitset. Ну да, он большой получается. Но вполне допустимого размера
🍁 Jaŭhien
Сишникам лишь бы биты повертеть
Aragaer
есть такое
Иван
Зато хорошее решение
Nikolay
👂
Иван
Лучше, чем то что надумал я
Иван
А если б нужно было заскейлить задачу?(больше числа, меньше памяти)