У меня есть скрипт python, который вызывает функцию php с использованием подпроцесса. Вывод сценария php записывается в качестве переменной для дальнейшего использования. Анализируя сохраненную переменную, я обнаружил, что если я распечатываю переменную, она имеет значение, отличное от самой переменной, и я не могу понять, почему. Я готовлюсь быть смущенным, поэтому, пожалуйста, просветите меня.
Да, пароль в этом вымышленном примере - «пароль»
cmd = "/usr/bin/php -f /opt/hello_world.php {} {}".format(encrypted_password,of_secret)
decrypted_password = subprocess.getoutput(cmd)
print(decrypted_password)
pdb.set_trace()
в pdb здесь вывод
password
(Pdb) decrypted_password
'\x00p\x00a\x00s\x00s\x00w\x00o\x00r\x00d'
(Pdb) print(decrypted_password)
password
(Pdb) locals()
{'cmd': '/usr/bin/php -f /opt/hello_world.php f2e57ba074b3c3d8d4d010bcff13083dc5928107f8cfbfaa4a52fff0155eebe5 JqiRnKJBaSwEOCI', 'decrypted_password': '\x00p\x00a\x00s\x00s\x00w\x00o\x00r\x00d'}