Если X = "ABCD", то при кодировании X должно отображаться: \x41\x42\x43\x44
X = "ABCD"
\x41\x42\x43\x44
Но почему X.encoding("utf-8") показывает: b"ABCD"
X.encoding("utf-8")
b"ABCD"
Мне сложно понять, как работает кодирование текста в python?
Это одно и то же - байты по возможности показываются в удобочитаемой форме. :)
Попробуйте сами в Python консоли:
>>> b"\x41\x42\x43\x44" b'ABCD' >>> "ABCD".encode() == b"\x41\x42\x43\x44" True