maximkv25: maximkv25: b'\xc8\xee\xf1\xe8\xf4 \xd1\xf2\xe0\xeb\xe8\xed' - это code-points нашей строки в кодировке CP-1251. Можно в этом убедиться, запустив
Но почему при выводе в консоль раскодированной строки он выдает кракозябры (как будто строка в UTF8 сконвертирована в 1251) - я не понимаю, учитывая, что кодировка в консоли - UTF8.
maximkv25: Ну вот строка из примера кодируется успешно, за исключением первых двух символов. Если это именно то, что приходит от сервера, то должно работать:
maximkv25: У вас парочка символов побилась при копировании. Вы полученную от сервера строку пытаетесь кодировать или то, что скопировали куда-то для тестов?
А вообще, неплохо бы увидеть весь код. Или, если он слишком громоздкий, то его упрощённую рабочую версию, где повторяется ваша проблема - это гораздо лучше, чем объяснять принцип работы программы словами
Если я правильно понял (а я, если честно, почти ничего не понял), то вы столкнулись с распространённым непониманием изменяемых и неизменяемых типов в Python.
Когда вы пишете baza = {"user1": {"Name": ...
вы присваиваете переменной baza ссылку на словарь. Когда вы пишете bazarezerv = baza
вы присваиваете переменной bazarezerv ссылку на тот же словарь. Когда вы пишете baza = bazarezerv.copy()
вы уже присваиваете переменной baza копию словаря, на которую указывает переменная bazarezerv. Однако все вложенные изменяемые типы (например, словари по ключу userX) вновь передаются ссылками.
Фразы для гугления:
mutable and unmutable types
Shallow and deep copies
>>как работает транзистор как основа любой электроники, история создания вычислительных машин, архитектура центрального процессора, информационные шины, периферийные устройства, файловые системы, операционные системы
Вы это серьезно? Ребенок и слушать не будет сухую теорию. Если ребенок интересуется программированием, ему будет интересно программировать, писать код и получать результат на экране. Можно немного дополнять занятия теорией, но если отложить всю веселуху и только пичкать его историей ЭВМ и конструкцией устройств - единственное, чего можно будет добиться, это формирования ассоциации программирования со скукой смертной
Но почему при выводе в консоль раскодированной строки он выдает кракозябры (как будто строка в UTF8 сконвертирована в 1251) - я не понимаю, учитывая, что кодировка в консоли - UTF8.
А просто
print('Иосиф Сталин')
он может?