タグ

ブックマーク / paiza.hatenablog.com (2)

  • Python3で巨大な浮動小数計算の結果が変だったので理由を調べてみた - paiza times

    Photo by Jacob Munk-Stander 秋山です。 タイトルのとおり、Python3で巨大な浮動小数計算をした時の計算結果についての話です。 例えば、 11 × ÷ 10 という計算式があったとしましょう。 普通に人力で単純に計算しようと思ったら、10の23乗を計算して、それから11を掛けて…という手順になるかと思いますが、10の23乗の時点で 100000000000000000000000 という大きな数になってしまい(ちなみに千垓です。垓は万・億・兆・京の次になります)非常にわかりづらいですね。 これぐらいの桁数の数になってくると、プログラミングでもいわゆる32bitの整数型では表現することができません。64bit整数でも足りないので、128bit整数でやっと表現できるようになります。 私は普段paizaのスキルチェック問題の制作を担当していて、自分でもいろいろな問題

    Python3で巨大な浮動小数計算の結果が変だったので理由を調べてみた - paiza times
    tsekine
    tsekine 2017/08/02
    “「/」演算子を使用した場合の、間違っている計算結果” この表現に超絶違和感。これ、定義されている誤差の範囲内の浮動小数点数なので、間違ってないよ。「間違っている」のは書いた人。
  • 【一覧付き】初心者は意外と知らない?便利な関数たち(Python3版) - paiza times

    Photo by pycon jp 秋山です。 Python3を使って開発中&勉強中の皆さん、組み込み関数はどれくらい覚えていますか?よく使うrange, input, min, max, dict……などしか覚えていないという人も多いかもしれません。 公式ドキュメントを見ると、実に68個もの組み込み関数がありました。(※ちなみに2系→3系で、あまり使われていないものはimportが必要になったり、上位機能のあるものが下位機能と統合されたり、命名変更されたりしています。例えばxrange,rangeは統合、reduceはfunctoolsへ移動…などなど。) もちろん、あまり使う機会のなさそうな特殊な関数まで覚えておく必要はありません。が、実は案外知られていないけど、使うと結構便利なものもあるのです。 というわけで今回は、意外と知られていないけど、知っていると便利ではかどると思うPytho

    【一覧付き】初心者は意外と知らない?便利な関数たち(Python3版) - paiza times
    tsekine
    tsekine 2017/03/28
    all() とか any() とか便利だけど、本当に組み込み関数である必要があるのか感はある。
  • 1