Dive into Python 3のchapter 3をさっくり読んでみた。
まずosモジュール。プラットフォーム依存を極力抑えるために用意されたAPIを詰め込んだモジュールだそうな。そこらへんRubyはUnix寄りな気がするけど、Pythonは中立を目指してるってことか。まあ、chapter 3で紹介されているAPIだけでは、理想を実現しているのかどうか判断しかねるけど。
Rubyと比較すると、DirやFileクラスの特異メソッドに分散している機能が、Pythonではosモジュールに集約されている印象。それでもglobはosに含まれないようだけど。
comprehension記法は、Rubyで言うところのmap(とif clauseをつければselect)の略記法だけど、dictにも使えるところがRubyにはない点。Pythonと比較してみて、今更RubyのHash#mapがHashを返さないことに気が付いた。あと、mapとselectの略記法とは言ったけれど、selectしてからmapするよりは中間オブジェクトが作られなさそう。実装は見てないけど。
0 件のコメント:
コメントを投稿