タグ

Pythonに関するnelnal_programingのブックマーク (137)

  • Pythonプログラミング:4

  • 9. Pythonデバッガ

    モジュールpdbPythonプログラム用の対話的ソースコードデバッガを定義します。(条件付き)ブレークポイントの設定やソース行レベルでのシングルステップ実行、スタックフレームのインスペクション、ソースコードリスティングおよびいかなるスタックフレームのコンテキストにおける任意のPythonコードの評価をサポートしています。事後解析デバッギングもサポートし、プログラムの制御下で呼び出すことができます。 デバッガは拡張可能です -- 実際にはクラスPdbとして定義されています。現在これについてのドキュメントはありませんが、ソースを読めば簡単に理解できます。拡張インターフェースはモジュールbdb(ドキュメントなし)とcmdを使っています。 デバッガのプロンプトは"(Pdb) "です。デバッガに制御された状態でプログラムを実行するための典型的な使い方は: >>> import pdb >>> im

  • 3. 正規表現を使う

    ここまでで、単純な正規表現をざっと見てきましたが、次は、どうやって Python の中で使うのかに話を進めましょう。 re モジュールは正規表現エンジンのインタフェースを提供し、正規表現をオブジェクト型にコンパイルして、マッチさせることを可能にします。 3.1. 正規表現のコンパイル 正規表現は RegexObject インスタンスにコンパイルされます。 このインスタンスは、パターン・マッチや文字列交換のような、様々な働きをするメソッドを持ちます。 >>> import re >>> p = re.compile('ab*') >>> print p <re.RegexObject instance at 80b4150> re.compile() に引数 flags を指定することで、特別な設定や文法の変更を実現するのに使われます。 使用可能な設定は後で見ていくことにして、ここでは例だけ

    nelnal_programing
    nelnal_programing 2007/11/01
    正規表現
  • CHALOW Search - hiChangeLog

    ■ 呼出し元の関数を調べる [python] 例えば以下のようにすれば、呼んだ関数が列挙される。 for record in inspect.stack(): print record[3], ■ MoinMoinを触った [python] MoinMoinを触ってみた。1.8.5。いい感じ。 ロクにマニュアルも見ていないが、身勝手な不満: (1)添付ファイルへのリンクがファイルと直接繋がっていない(その添付ファイルにまつわるページに行く) (2)添付ファイルリストが名前順であり、日付順にできない。 (1) この不満はviewメソッドの振舞にある:getメソッドが私の望む動作である。 同様に考える人は多いようだが、設計上の一貫性から、設定で変更というわけにもいかぬようだ。 [Moin-user] Changing default behavior on downloads. なので無理矢理

  • 1.1 簡単な例

    nelnal_programing
    nelnal_programing 2007/11/01
    C, C++との連携
  • python-JapaneseCodecs

    JapaneseCodecs version 1.4.11 梶山民人 (2004年11月28日) はじめに パッケージは、Unicode をサポートした Python において、EUC-JP、Shift_JIS、ISO-2022-JP などの日語の文字エンコーディングを利用できるようにするためのコデック集です。パッケージを用いることにより、日語の文字データをバイト列としてではなく文字列として扱えるようになります。 Python の Unicode 関連の API は、Marc-Andre Lemburg によって提案され、以下の仕様書で定義されています。 http://starship.python.net/crew/lemburg/unicode-proposal.txt パッケージの提供するコデックは Proposal Version 1.8 に準拠しています。コデックの詳細

    nelnal_programing
    nelnal_programing 2007/11/01
    JapaneseCodecs
  • Python でファイルを読む

    [Home] [Setting up Mac OS X] [Python]: ファイルを読む [日語を使う] Python examples - ファイルを読む Python Tutorial にあまり書かれていなかった、「ファイルの読み方」について、例を示します。 対話形式で一行ずつ端末から読む 質問やプロンプトを出して、一行ずつ答えを端末から読む場合は、 raw_input() を使う次の方法が簡単です。 name = raw_input('Enter name: ') print name 標準入力(stdin)から一行ずつ、最後まで読む 標準入力から読むには、sys をimport しておき、sys.stdin を用います。 次の例は、1行ずつ、標準入力から読んで標準出力に書き出します。 (なお、print 文が自分で改行を付け足さないよう、最後にコンマがついています。) #!/

  • k.i.h.p - messageboard

    こんにちは。 PythonIteratorについて、全然知らないでのは寂しいので、私の知って いる範疇でざっと解説したいと思います。多少なりとも参考になれば幸いです。 最近のPythonはリストやファイルから簡単にイテレータが作れます。 i = iter( リスト ) とかするだけ。i.next() で次の値ゲット。 これ以上要素がないときにはStopIteration例外発動。 で、外部イテレータとして、whileループで回してtryで例外捕まえて、 とも書けますが、普通もっと楽な方法を使います:forにつっこむだけ。 for i in iter( リスト ): print i これでnext()とかStopIterationとかは書かなくても言語が面倒見てくれます。 内部イテレータなのか外部イテレータなのか微妙なところです(笑 もちろんイテレータを自分で作るこ

    nelnal_programing
    nelnal_programing 2007/11/01
    iterator
  • csvモジュールとtemplateモジュールで定型的なファイルを出力 - Bouldering & Com.

    def create_poor_doc(csv_file, tmpl_file): import csv reader = csv.reader(open(csv_file, 'rb')) import string f = open(tmpl_file , 'r') msg = string.Template(f.read()) f.close() for row in reader: f = open(row[0] + '.html', 'w') f.write(msg.substitute({'title': row[1], 'status': row[2], 'detail': row[3]})) f.close() tmpl_fileの例 ===== ${title} ===== ${status} -------- ${detail}

    csvモジュールとtemplateモジュールで定型的なファイルを出力 - Bouldering & Com.
  • http://michilu.com/django/doc-ja/outputting_csv/

    このドキュメントでは, Django のビューを使って動的に CSV (Comma Separated Values: カンマ区切りのフィールドデータ) ファイルを生成する方法について説明 します. CSV の生成には Python CSV ライブラリ , または Django テンプレートシ ステムが必要です. CSV ライブラリを使う Python には CSV ライブラリモジュール csv がついてきます.Djangocsv を使う上での鍵は,モジュールの CSV 生成機能がファイルライクオ ブジェクトを扱えることと, Django の HttpResponse オブジェクトがファイ ルライクオブジェクトであることにあります. 一例を示します: import csv from django.http import HttpResponse def some_view(reque

  • Python_e3_83_a1_e3_83_a2

    login Python_e3_83_a1_e3_83_a2 top

  • 再帰とジェネレータ

    back [English] 概要: ある種の問題は、再帰を使うと非常に効率的に記述できる。 しかし大量のデータを生成するような再帰的手続きは厳密に制御する必要があり、 そういったプログラミングは難しい。Python 2.2 以降から使用可能になった ジェネレータを使うと、簡潔なコードを維持しつつ、 こうした手続きをかんたんに制御することができる。 この文書で使われているソースコードは こちら。 プレインテキスト版は こちら。 はじめに 再帰は非常に強力なメカニズムです。 時にこれは混乱を招くこともありますが、ふつう再帰を使うと、問題を簡単に記述することができます。 ある手続きが扱うデータ量が指数的に増えるような場合、これはとくにあてはまります。 木構造の探索がいい例でしょう。木の各節点はひとつ以上の子を持っていますが、 下へ下へとたどっていくにつれて、節点の数は指数的に増えていきます。

    nelnal_programing
    nelnal_programing 2007/11/01
    イテレータ StopIterator
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • 3.18 copy -- 浅いコピーおよび深いコピー操作

    このモジュールでは汎用の (浅い/深い) コピー操作を提供しています。 以下にインタフェースをまとめます: import copy x = copy.copy(y) # make a shallow copy of y x = copy.deepcopy(y) # make a deep copy of y このモジュール固有のエラーに対しては、copy.error が送出されます。 浅い (shallow) コピーと深い (deep) コピーの違いが関係するのは、 複合オブジェクト (リストやクラスインスタンスのような他のオブジェクトを 含むオブジェクト) だけです: 浅いコピー (shallow copy) は新たな複合オブジェクトを作成し、 その後 (可能な限り) 元のオブジェクト中に見つかったオブジェクトに対する 参照 を挿入します。 深いコピー (deep copy) は新たな

    nelnal_programing
    nelnal_programing 2007/11/01
    copyモジュール
  • perl, python & ruby - chr() vs. Unicode : 404 Blog Not Found

    2006年11月23日22:00 カテゴリLightweight Languages perl, python & ruby - chr() vs. Unicode というわけで、404 Blog Not Found:There's more than one language to cook your problemsでPython & Ruby Cookbooksを一気読みしたので、気になる点を少しずつ書いて行くことにする。 まずは、文字の扱い。文字列でない点に注意。 少なくとも、文字列をバイト列と見なして相互変換することは、LLに限らずたいていの言語で出来るようになったのだけど、文字を文字として扱うという点に関しては各言語ともまちまちで、多言語派の私としては結構頭のいたいところ。 ここでは、私が一番流暢なPerlを軸に、RubyPythonではどうなっているのかを調べてみた。 数値

    perl, python & ruby - chr() vs. Unicode : 404 Blog Not Found
    nelnal_programing
    nelnal_programing 2007/11/01
    chr(), unichr()
  • Python Packages Index: Home

    Find, install and publish Python packages with the Python Package Index Search PyPI Search Or browse projects The Python Package Index (PyPI) is a repository of software for the Python programming language. PyPI helps you find and install software developed and shared by the Python community. Learn about installing packages. Package authors use PyPI to distribute their software. Learn how to packa

    Python Packages Index: Home