En Ruby, vous pouvez lire à partir d'un fichier à l'aide d' s = File.read(filename)
. Le plus court et le plus clair je sais en Python est
with file(filename) as f:
s = f.read()
Est-il un autre moyen de le faire qui le rend encore plus courte (de préférence sur une ligne) et plus lisible?
Note: au départ, j'ai formulé la question "cela en une seule ligne de code". Comme indiqué par S. Lott, plus courte ne signifie pas nécessairement la plus lisible. Donc, j'ai reformulé ma question, juste pour rendre clair ce que je voulais dire. Je pense que le code Ruby est mieux et plus lisible, pas nécessairement parce que c'est une seule ligne au lieu de deux (bien que les choses ainsi), mais aussi parce que c'est une méthode de classe, par opposition à une méthode d'instance, ce qui ne pose pas de question sur qui ferme le fichier, comment faire en sorte qu'il soit fermé, même si une exception est levée, etc. Comme indiqué dans les réponses ci-dessous, vous pouvez compter sur le gouvernement pour fermer votre fichier (donc ce qui en fait un one-liner), mais qui rend le code pour le pire, même si c'est plus court. Non seulement par le fait d'être portables, mais en la rendant incertaine.