タグ

ブックマーク / www.shido.info (8)

  • sqlite3

    1. 初めに (書きかけ) SQLite は RDMS (関係データベース管理システム) の一種です。 通常の RDMS と異なり面倒なセットアップが不要で、簡単に利用することができます。 通常のファイル並に簡単に扱えるので、 今まではテキストファイルなどに保存していたデータは sqlite に保存するようにすると便利です。 2. Python から SQLite を使う もちろん、Python からも SQLite を利用できます。 Python 2.5 から sqlite3 が build-in package として配布されているので、 すぐに使うことができます。 次の例のように、データファイルに connect するだけで、使うことができます。 データファイルは、 存在しなければ自動的に作成され、 存在すれば、それが開かれます。 また、データの保存はデータベースオブジェクトの co

  • Python 早めぐり

    -c command 指定されたコマンドを実行 script python ファイル (.py) を読み込んで実行 argvs スクリプトまたはコマンドの引数 対話モードで起動するとき、環境変数 PYTHONSTARTUP で指定されたファイルを読み込みます。 よく使うモジュールを import しておくと便利です。 詳しくは チュートリアル 2.1. を見てください。 スタートアップファイルの例: 01: # PYTHONSTARTUP 02: 03: import sys, math, re, os, os.path 04: print 'sys, math, re, os, os.path has been imported.' 2. Python スクリプトの書式 Python スクリプトの書式は以下の通りです。 00: #! /usr/bin/env python 01: # -

  • Python 2.5 の新機能

    1. 初めに 2006 年 9 月 19 日に Python 2.5 がリリースされました。このバージョンではかなりいろいろな点が 改善され、ますます使いやすくなっています。 この文書では Python 2.5 の改善点を簡単に紹介したいと思います。 詳しく知りたい人は What's New in Python 2.5 をみてください。 2. Python 2.5 での変更点 2.1. 三項演算子 Python 2.5 から "三項演算子" が使えるようになりました。 今まで、Python には三項演算子が無かったので、単に条件によって代入される値を変えるために if predicate: value = then_value else: value = else_value と書くのは冗長なので、簡潔に、 value = predicate and then_value or else_

  • wxPython でお手軽 gui

    1. 初めに この間作ったメディアからハードディスクへ画像ファイルを移動するスクリプトは 残念ながら家族に不評でした。 家族曰く: 「なんでファイルを移動させるだけなのに薄気味悪い黒い窓が開くの?」 薄気味悪い黒い窓とは DOS プロンプトのことです。これだから素人は困ると思いつつ、gui version を 書いてみました。 Python には Tkinter, PyQt, PyGTK, wxPython などの gui toolkit があります。 いろいろと物色した結果次のことが分かりました。 これらの toolkit のマニュアル、チュートリアルは極めて不備である。 wxPython はデモスクリプトがあるだけまだましである。 wxPython はいろいろな widget が揃っている。 wxPython は最近人気があるようである。(その結果として web resources が

  • Python を使った FTP アップロード

    1. 初めに 紫藤は xyzzy という emacs 風のエディタを使って HTML を書いています。 このエディターから抜け出さないでファンクションキーひとつでファイルをアップロードするスクリプトを 書いてみました。xyzzy Lisp を使ってアップロードの 入力ファイルを作るスクリプトを書き、 入力ファイルに基づいてアップロードを行うスクリプトを Python で書きました。 ここでは Python で書いた部分について解説します。 100 行ほどの短いスクリプトで書くことができます。 このスクリプトは短いのですが、それなりのテクニックを使っているので、 皆様の参考になればと思い、紹介します。 2. 仕様 2.1. 入出力ファイルを作るディレクトリ 入力ファイルおよび出力ファイルは環境変数 TEMP または TMP で定義されたディレクトリに 作成します。両方とも定義されていなければ

  • Perl, Python, Ruby の比較

    コードの書きやすさは3つともそれほど違わないように思えます。ただ、読みやすさはダントツで Python が 優れています。Ruby はまずまずで、Perl は書き手の技量による部分が大きいのですが、 一般的には "読めない" コードになりがちです。 現在の人気を無視して、言語そのもののよしあしを考えると、 PythonRuby はほぼ互角でしょう。しかし、今のところ Python の方が、 実行速度が速く、ライブラリが豊富なので、とりあえず Python を使うことにします。 また、Python には対話モードがあるのも Lisp に慣れた人間にとってはありがたいです。 Ruby は今後の健闘に期待します。 5. おわりに 以上 Perl, Python, Ruby の比較をつれづれと書きましたがご参考になりましたでしょうか? 結論は、 Python, RubyPerl に比べ

  • On Python

    Python は最近人気のスクリプト言語です。 Python の魅力はシンプルな文法と、拡張性の高さでしょう。 Python はちょっとしたスクリプトを書くのにも、大規模なプログラムを書くにも適した言語です。 最近の Version は日語にも完全に対応し、日でも愛用者が増えていると思われます。 Web 上で見当たらなかった文書やスクリプトを書いて公開しています。 特に Tkinter について詳しく書いてあります。 Python メモ Perl, Python, Ruby の比較 Python 早めぐり xyzzy から pydoc を使う wxPython でお気軽 guiwxPython と Tkinter で Eight Queens を作る Python のクラスシステム Python を使った FTP アップロード Python の”新しい”クラス Python 2.5

  • Python のクラスシステム

    1. 初めに この文書の目的は、 Python で自前の class を作るとき、メソッドの第一引数がそのクラスのインスタンスそれ自身 (一般に self と書かれる) であることの理由を説明することです。 他の言語ではメソッドを定義するときに第一引数をインスタンスにするという方法は取り入れておらず、 this などの予約語を使ってインスタンスを表すのが一般的です。 Python だけが、独自の流儀をとっています。 しかし、このことを説明したサイトは見当たりませんでした。 どのサイトもそれは決まりごとだで済ませてしまっています。 しかし、それではどうも Python のクラスシステムを理解した気になれないので、Python でクラスシステムが どのように実装しているか推測しながら、例の self について説明したいと思います。 2. オブジェクト指向プログラミングの復習 オブジェクトとは、

  • 1