Bonjour,
Je viens de passer sous Python3 et cela fait 2h que je bloque sur un détail. Je souhaite donc transmettre un fichier à mon script par un pipe (sous Linux) :
cat monfichier.txt | python3 monscript.py
Voici ce que contient mon script:
1 2 3 4 5 6 7 8 9 10 11
| import sys, argparse
parser = argparse.ArgumentParser()
parser.add_argument('fichier', nargs="?", type=argparse.FileType('r'),
default=sys.stdin, help="translation table file")
args = parser.parse_args()
for line in args.fichier:
print(line) |
Le script tourne dans le vide et ne retourne rien. Notez que si je le lance de cette manière, en argument :
python3 monscript.py monfichier.txt
Là, tout fonctionne. Qu'est-ce que j'ai manqué ?
Partager