Por que a saída de impressão em python2 e python3 é diferente com a mesma string?

Em python2:

$ python2 -c 'print "\x08\x04\x87\x18"' | hexdump -C
00000000  08 04 87 18 0a                                    |.....|
00000005

Em python3:

$ python3 -c 'print("\x08\x04\x87\x18")' | hexdump -C
00000000  08 04 c2 87 18 0a                                 |......|
00000006

Por que tem o byte"\xc2" aqui?

Editar:

Eu acho que quando a string tem um caractere não-ascii, python3 acrescentará o byte"\xc2" para a corda. (como @Ashraful Islam disse)

Então, como posso evitar isso em python3?

questionAnswers(2)

yourAnswerToTheQuestion