J'ai du code qui ouvre et lit un fichier binaire.
with open (file, mode="rb") as myfile:
message_string=myfile.read()
myfile.close
Je dois maintenant faire la même chose en lisant depuis stdin. Mais je n'arrive pas à comprendre comment lire le binaire.
L'erreur indique uniquement des chaînes d'octets.
Aucune suggestion?
Dans Python 3, si vous voulez lire les données binaires de stdin
, vous devez utiliser son attribut buffer
:
import sys
data = sys.stdin.buffer.read()
On Python 2, sys.stdin.read()
renvoie déjà une chaîne d'octets; il n'est pas nécessaire d'utiliser buffer
.