web-dev-qa-db-fra.com

Que fait "print >>" en python?

Je dois traduire un code de python 2 en python 3 et je ne comprends pas ce que fait print >> faire et comment dois-je l'écrire en python 3.

print >> sys.stderr, '--'
print >> sys.stderr, 'entrada1: ', entrada1
print >> sys.stderr, 'entrada2: ', entrada2
print >> sys.stderr, '--'
28
Sebastian

Pour les convertir de Python 2 à Python 3, changez:

print >>sys.stderr, 'Hello'

à:

print('Hello', file=sys.stderr)
14
Tom Karzes

Pour l'impression sur stderr note

sys.stderr.write()

est portable sur plusieurs versions, mais vous devez ajouter une nouvelle ligne, contrairement à print; par exemple

import sys

errlog = sys.stderr.write
errlog("an error message\n")
3
elm