web-dev-qa-db-fra.com

Lecture d'une ligne à partir d'une entrée standard dans Python

Quelles sont, le cas échéant, les différences entre les deux méthodes suivantes de lecture d'une ligne à partir d'une entrée standard: raw_input() et sys.stdin.readline()? Et dans quels cas l'une de ces méthodes est préférable à l'autre?

26
Grigor Gevorgyan

"Cependant, du point de vue de nombreux Python débutants et éducateurs, l'utilisation de sys.stdin.readline () présente les problèmes suivants:

  1. Comparé au nom "raw_input", le nom "sys.stdin.readline ()" est maladroit et inélégant.

  2. Les noms "sys" et "stdin" n'ont aucune signification pour la plupart des débutants, qui s'intéressent principalement à ce que fait la fonction, et non à l'endroit où elle se trouve dans la structure du package. Le manque de sens le rend également difficile à retenir: est-ce "sys.stdin.readline ()" ou "stdin.sys.readline ()"? Pour un novice en programmation, il n'y a aucune raison évidente de préférer l'un à l'autre. En revanche, les fonctions de noms simples et directs comme print, input et raw_input et open sont plus faciles à mémoriser. "D'ici: http://www.python.org/dev/peps/pep-3111/

9
Mariy