Je viens de remarquer que la fonctionnalité de nouvelle ligne universelle des opérations sur les fichiers semble être en voie de disparition.
La documentation de Python 3.5 open
du mode
paramètre indique qu'il est dépréciée:
'U'
mode de saut de ligne universel (obsolète)
Au moins aussi loin que Python 3.2, open
contient un avertissement similaire de "compatibilité descendante uniquement" lors de la documentation de l'utilisation de l' mode
argument:
'U'
mode de saut de ligne universel (pour la compatibilité descendante; ne doit pas être utilisé dans le nouveau code)
Même en Python 2.7, un avertissement similaire est placé dans la documentation de io.open
.
Quelle en est la raison?
python
io
deprecation
jpmc26
la source
la source
Réponses:
La
open()
fonction de la bibliothèque Python 3 a unnewline
argument. Le paramétrer surNone
permet des sauts de ligne universels. C'est la façon acceptée de le faire, ce qui rend l'mode='U'
argument redondant.Utilisez
newline=None
pour activer le mode de saut de ligne universel (c'est la valeur par défaut).la source
Après être tombé sur cette question, j'ai mis à jour la documentation pour être plus clair sur ce qui se passe ( https://github.com/python/cpython/pull/11646/files ).
L'entrée de table cryptiquement confuse pour a
'U'
disparu, et à la place, il y a un paragraphe plus bas qui dit:la source