Pythonの禅、pep20:The Zen of Python【日本語】

Python禅 雑記
Python禅

日本語訳してみました。大体あってる、意味が通じればいいくらいの翻訳(意訳)です。

pep20:The Zen of Python の日本語訳(意訳)

pep20:Pythonにおける禅 (意訳:taka)

  1. 見た目は美しい方がいい。
  2. 暗黙の了解で錯乱するくらいなら明示しよう。
  3. 複雑にせず、シンプルな構成の方がいい
  4. でも、メンテ不能なコードより、メンテ可能な複雑さの方がマシ。
  5. ネストするより、ネストしない構造を目指そう。
  6. 内容は詰め込みすぎず、程よくバラすべき。
  7. 読みやすさの積み重ねには価値ある。
  8. 安易に例外なんて認めてはならない
  9. でも現実には臨機応変に対応せざるを得ないのだが。
  10. 勝手にエラーはもみ消してはいけない
  11. エラー無視を許容できる理由が明記されていない限りね
  12. 曖昧な選択肢に遭遇し、鉛筆を転がして決めたくなっても、その誘惑は断固拒否すること!
  13. きっと解決策はある。誰にとっても一筋となる正解ルートがきっとある。
  14. オランダ語に理解がないと一見わかりにくい道筋かもしれないけどきっと道はある。
  15. ネガティブな過去より今できることを優先しよう。
  16. でも、即断即決にこだわらないこと。早とちりをして何もしない方がマシだったと後悔することはあるある。
  17. 人に説明しにくい思い付きは、大抵は愚策だ。
  18. 逆に簡単に説明できる実装なら良策かもしれない。
  19. 名前空間の概念はマジ妙案だ。ガンガン使っていこう。
スポンサーリンク

原文

  1. Beautiful is better than ugly.
  2. Explicit is better than implicit.
  3. Simple is better than complex.
  4. Complex is better than complicated.
  5. Flat is better than nested.
  6. Sparse is better than dense.
  7. Readability counts.
  8. Special cases aren’t special enough to break the rules.
  9. Although practicality beats purity.
  10. Errors should never pass silently.
  11. Unless explicitly silenced.
  12. In the face of ambiguity, refuse the temptation to guess.
  13. There should be one– and preferably only one –obvious way to do it.
  14. Although that way may not be obvious at first unless you’re Dutch.
  15. Now is better than never.
  16. Although never is often better than right now.
  17. If the implementation is hard to explain, it’s a bad idea.
  18. If the implementation is easy to explain, it may be a good idea.
  19. Namespaces are one honking great idea — let’s do more of those!
スポンサーリンク

pepとは

Pythonの様々な提案をまとめたもの。英語原文はこちら

pep20: The Zen of Python とは

pepに数多く提案されているもののうち、Pythoneer であるティム・ピーターズによる格言集。

日本語の「禅」にちなんで、Python禅として知られている。

イースターエッグ

Pythonの世界で、「import this」と唱えると表示されるイースターエッグとして埋め込まれている。

スポンサーリンク

ちょー蛇足:意訳時のメモ

だいたいあってればいいくらいの意訳を目指しました。とはいえ、一応自分なりに訳の根拠とか考えながら作業したので、その際のメモです。誰得だろ…まいいや。

1. uglyは、look at 時の不快感を示す。日本語で「醜い」だと精神的なニュアンスもあるので、もっと単純に見た目として解釈。

3.4. complexも complicated も複雑の意味。英英辞典を見ると、
complexは「consisting of many different parts and often difficult to understand」
complicated は「difficult to understand or deal with, because many parts or details are involved」
complicated には理解不能・取り扱い不能というニュアンスが強い。(参考:「複雑」のcomplexとcomplicatedの違い

5. ネストはプログラマにとってはなじみがある。ただ対義語がフラットと言われると私にはわかるんだけど、日本語としてはピンと来なかったので、ネストしない、という言葉で表現した

6. 密度の話をしているので、詰め込み過ぎない、という訳を当てた

7. counts は「大事」と訳すものが多いが、数えられる物への価値というニュアンスがあるようなので、積み上げていく価値と表現してみた。

8. ルールを破って作った特例を、日本語では一言「例外」。直訳するとくどい感じがする。無暗にルールを破るな、とか安易に例外を認めるな、というニュアンスで訳してみた。

9. 一貫しきれないケースの存在を言っている。日本語には「臨機応変」という便利な言葉がある。

12. guessには確信が持てない推測というニュアンス。英語の推測を示す動詞の中でも最も確信が弱く、あてずっぽう的なイメージ。さいころか、鉛筆かくらいのイメージで訳してみた。

14. こちらの記事から、フランス文化で答えられないが、オランダ文化では当たり前に理解されるケースがあるよね、というニュアンスらしい。言語や文化によって当たり前の度合いが違うことを示しているみたい。

15. nowとneverを比べている。nowは時(トキ)なので、neverも時(トキ)のニュアンス。
never = not ever = not (at any time) であり、「時が始まって現在に至るまで否定する」 というニュアンスとのこと。ここでは過去を否定する意味で訳してみました。(参考:【辞書より分かる】 never の意味と使い方

16. now と right now の比較。 right now が今という時の一点を示す。時の一点というのは日本語のニュアンスが難しい。nowのほうがright nowよりマシなのだから、right nowの方がダメ=後悔するということ、つまり早とちりを警告している。

その他の翻訳

より原文に忠実な訳がたくさんあります。以下リンクをどうぞ。

雑記
スポンサーリンク
takaをフォローする
アフターファイブ改革

コメント

タイトルとURLをコピーしました