python

Ubuntu 11.04にPythonbrewを使ってPython2.5, 2.7, 3.2の環境を構築したときのメモ

Ubuntu 11.04 でpythonbrewを使って環境を構築する際にいろいろハマりました。何度かやってるうちに、こうすればひと通り標準ライブラリや有名所のライブラリが動くのかなーというのがわかったので備忘録も兼ねて記事にしてみました。pythonbrewについての詳…

Python3.2のconcurrent.futuresモジュールを使ってSleep Sort

Python3.2の標準ライブラリを眺めてたら、3.2で新しく追加になったconcurrent.futuresという並列処理用のモジュールが目に止まりました。16.4. concurrent.futures — Launching parallel tasks — Python v3.2.3 documentationパッと思いついたのが先週くらい…

Pythonのisdigit(),isdecimal(),isnumeric()の違いを調べてみた

(2017/8/7追記) 当時は記事内容の通りだったんですが、現在のpython3.6や2.7の最新だとローマ数字はisdigitでFalseを返すようです いつもtwitterでお世話になってる方のブログ記事でこんな記述がありました。 #91 [Python][TDD]テスト駆動開発でFizzBuzzして…

itertoolsモジュールをひと通り眺めてみた

Python 3 からは一部の関数がイテレータを返すよう変更になったということなので、この機会にPython3を触りつつitertoolsモジュールについてひととおり学んでみた。 主に参考にしたのは9.7. itertools — 効率的なループ実行のためのイテレータ生成関数 — Pyt…

Portable Python が Python 3.2 に対応

USBに入れて持ち運べるPython環境、「 Portable Python 」のPython3系対応バージョンが、いつの間にかPython 3.0から3.2にバージョンアップしていました。ダウンロードはこちらのページから。Windowsの場合、最後にインストールしたバージョンのPythonが既定…

Rubyのuniq()をpythonで再現するなら

id:atsuoishimoto さんの uniq()あれこれ - atsuoishimotoの日記 という記事を読み、そのまたリンク先記事やコメント欄を読ませてもらいました。僕はRubyはほとんど知らないのでuniqメソッドについても記事のはじめのほうでは「set()じゃだめなのかな?」と…

Pythonのクラスや関数を簡単に選択するvimプラグイン

vimでhtml編集してるとテキストオブジェクトが便利ですよね。例えばformタグの中にカーソルがある状態で「vat」とキーを叩くだけでform全体を選択状態にしてくれるアレです。pythonでもクラスやメソッドを簡単に選択できたら楽なんですが、なんかいい方法な…

基底クラスの__init__()について

最近必要に迫られてC#を勉強してるkk6です。[雑記] コンストラクター内の仮想メソッド呼び出し (C# によるプログラミング入門) ←ここの「余談: 実行順序に関して」という見出し以下のC#のコードを実行すると以下のように出力される。 Member derived Member…

Sphinxを最新版にアップデートしてmake html出来なくなった時の対処法

make出来なくなった Sphinxを最新版(v1.0.7)にアップグレードしたところ、make htmlコマンドが以下のようなエラーを吐くようになりました。 $ make html Running Sphinx v1.0.7 loading pickled environment... not yet created AccessInit: hash collisio…

Problem 10 - Project Euler

10以下の素数の和は2 + 3 + 5 + 7 = 17である. 200万以下の全ての素数の和を計算しなさい. これもねぇ…素数のリストさえできれば簡単な問題ですよ。しかし僕の作ったコードでは素数リストの生成が終わる気配がありません。お手上げです。 終わらない計算 も…

Problem 6 - Project Euler

3問目までは順番に解いてきましたが、難易度順にならんでるわけでもないようなので今後は解けそうなものから手を付けていくことにします。 最初の10個の自然数について、その和の二乗と、二乗数の和は以下の通り。1² + 2² + ... + 10² = 385 (1 + 2 + ... + …

Problem 3 - Project Euler

600851475143 の素因数のうち最大のものを求めよ。 大きすぎる数値 素数のリストが作れてしまえば簡単なんですが、昨日も書いたように数値が大きすぎてlong型になってしまいます。xrangeはlong型は扱えないみたい(int型に変換しようとするっぽい)なのです…

素数のリストを生成する(エラトステネスの篩)

Project Euler の第3問は素因数を求める問題なので、まずは素数のリストを生成しようということで「エラトステネスの篩(エラトステネスのふるい)」というアルゴリズムを使用して任意の n 以下の素数のリストを生成するコードを書いてみました。エラトステ…

Problem 2 - Project Euler

Project Euler の2問目は フィボナッチ数列の項が400万を超えない範囲で、偶数の項の総和を求める という問題です。 フィボナッチ数列の一般項 フィボナッチ数列の一般項は以下の通りです。 別に数学が得意というわけではないんですが、ちょうど数学ガールを…

Problem 1 - Project Euler

Project Euler - PukiWiki面白そうだったのでこれから少しずつ挑戦していこうと思います。 まずは1問目 10未満の自然数のうち、3 もしくは 5 の倍数になっているものは 3, 5, 6, 9 の4つがあり、 これらの合計は 23 になる。同じようにして、1,000 未満の 3 …

オブジェクトから様々な情報を取得する inspectモジュール

調べ物をしていたらちょっと面白いモジュールを見つけたのでメモ。 26.10 inspect -- 使用中オブジェクトの情報を取得する バージョン 2.1 で 新たに追加 された仕様です。inspectは、モジュール・クラス・メソッド・関数・トレースバック・ フレームオブジ…