タグ

ブックマーク / python-history-jp.blogspot.com (2)

  • The History of Python.jp

    今日は何度も「なぜPythonの整数の割り算はC言語のようにゼロに向けて丸めるのではなく、切り捨てなのか?」と聞かれた。 数値が両方とも正の場合には、何も驚くようなことは発生しない。 >>> 5//2 2 しかし、どちらかの数値が負の場合、結果は切り捨てられる。言い換えると、ゼロから遠い方向(負の無限大方向)に向けて丸められる。 >>> -5//2 -3 >>> 5//-2 -3 この挙動は何人かの人を混乱させたようであるが、このような実装になっているのは数学的な根拠がある。整数の割り算の演算子(//)と、その弟の余りを計算する演算子(%)は、次のような数学的な関係を保っている。すべての変数は整数とする。 a/b = q あまり r これは、次のような関係性を持っている。 b * q + r = a かつ 0 <= r < b (ただし、a, bはともに0以上の整数) もしも、この式の関係

  • すべてをファーストクラスに

    原文:http://python-history.blogspot.com/2009/02/first-class-everything.html 原文投稿者:Guido van Rossum Pythonにおける私の目標の一つが、すべてのオブジェクトを「ファーストクラス」にするというものであった。これは、プログラミング言語の中のすべてのオブジェクト(数値、文字列、関数、クラス、モジュール、メソッドなど)に対して、名前をつけて、同じように取り扱うことができるようになるということを意味している。オブジェクトを変数に格納したり、リストの中に並べたり、辞書に格納したり、引数として渡したり、といったことが可能になるのである。 これを実現するためのPythonの内部実装はとてもシンプルになっている。すべてのPythonのオブジェクトは共通のC言語の構造体を元にしており、インタプリタ内のあらゆる場所で

    kk6
    kk6 2010/02/19
  • 1