タグ

programmingに関するbonlifeのブックマーク (213)

  • Python プログラミング

    C++ のクラスと Python のクラス C++Python の大きな違いは、前者がコンパイラ向け、 後者がインタプリタ向けの言語であるということ。あたりまえだけど。 C++ では「クラス」はあくまで、ヘッダファイルなどでの「定義」であって、 コンパイラにかけるときには、実際にその定義されたコードが実行される ことはない。これもあたりまえ。 一方、Python はインタプリタなので、「クラス」文はいきなり実行されている。 もうちょっと具体的に言うと、: 1: class foo(object): 2: def bar(self): 3: print 'Hello, world!!' 4: 5: x = foo() 6: x.bar() 上記のような Python のプログラムがあったとき、C++ の感覚だと、 5行目から実行されているような気がする。で、foo() で foo クラ

  • odz buffer - Meadow で python-mode pymacs pycomplete を使う

    Meadow で pycomplete を使うメモ。 Pymacs のインストール http://pymacs.progiciels-bpi.ca/ から Pymacs-0.22.tar.gz をダウンロードしてきてインストールする。 % cd Pymacs-0.22 % python setup.py installpymacs-services を起動するためのバッチファイル pymacs-services.bat を作って、 PATH の通ったところにおいておく。 % type C:\Python24\pymacs-services.bat python C:\Python24\scripts\pymacs-servicespymacs.el は load-path の通ったところにコピーする。 python-mode のインストール http://python-mode.sourc

    odz buffer - Meadow で python-mode pymacs pycomplete を使う
  • Jinja — Jinja Documentation (3.1.x)

    Jinja¶ Jinja is a fast, expressive, extensible templating engine. Special placeholders in the template allow writing code similar to Python syntax. Then the template is passed data to render the final document.

  • ♪8th Note♪: 空メールでユーザ登録

    大変ご無沙汰です。約1年半ぶりの更新です。 昨日、ブログを設置しているサーバでOSのアップデートに問題が発生したため、これを機に新サーバ・新OSに乗り換えることにしました。 現在のブログがマルチサイトのため、そのままでは新サーバの構築に苦戦すると予想されるため、他のブログの記事を統合しました。 統合内容は以下の通りです。 ・C-Production ・・・ メインサイトのため、他のブログを吸収して継続。 ・♪8thNote♪ ・・・ メインサイトに統合済みだったので、削除。 ・モバイル魂 ・・・ メインサイトに記事を引き継ぎ、並行稼働中。 ・無線のドキュメント ・・・ もともと閉鎖予定だったので、そのまま削除 外部SNSのアカウントについてはそのまま継続します。 今後ともよろしくお願いします。

    bonlife
    bonlife 2007/08/27
    RFC2606的には exsample.com ではなく example.com にしておいて欲しかったような
  • コマンドライン上で動作するニコニコ動画ダウンローダー on Python - yanbe.log

    ニコニコ動画の.flvファイルをダウンロードするPythonスクリプトです. 引数としてsm??????のようなIDとhttp://www.nicovideo.jp/watch/sm?????? のようなURLの両方を受け付けます.また,複数の引数を受け取ると順次ダウンロードします. GreaseMonkeyスクリプトなどで同様の目的を達成するものは既にいくつかありますが,サイトの仕様変更のためか,うまく動作しないことが多いので自作してみました. 標準のモジュール(ライブラリ)のみを使っているので,多くの環境で動作するはずです. その他の特長として,プログレスバーで進捗を表示したり,ページのタイトルをチェックして適切なファイル名をつけたりするといったものもあります. 個人的にはPyhtonでのBasic認証やCookie制御の要領が分かったことと,自分で処理に時間がかかるプログラムを書いた

  • JavaScript での日付チェック (でぃべろっぱーず・さいど)

    年月日のプルダウンがあって、そこで指定された日付が正当なものかどうかJavaScriptでチェックする方法。 日付は Date クラスの引数に年月日を与えれば良いのですが、例えば、 var d = new Date(2007,1,31); //月は0~11の値を取るので、これで2007年2月31日を指定している。 とすると、d は 2007年3月3日となってしまいます。 ということで、これを逆手にとって、 function isValidDate(y,m,d){ var di = new Date(y,m-1,d); if(di.getFullYear() == y && di.getMonth() == m-1 && di.getDate() == d){ return true; } return false; } とすればOK。 ↓一応サンプル。 //

  • 西尾泰和のブログ @ Cybozu Labs: Pythonでtypoを素早く察知する方法

    先日「スクリプト言語は便利だけど、 長時間計算した後で綴り間違い(typo)で落ちたりすると やる気がなくなるよね」 という話を聞きました。 たしかに、綴り間違いで落ちるのは悲しいです。 せめて「代入されたけども読み出されていない変数」とか 「代入される前に読み出されている変数」が出力できれば、 早めに綴り間違いに気づくことができますね。 そこで「先日公開したCodeHackモジュールを使えば簡単にできるよ」と言いながら作ったのが今回紹介するモジュールです。 CodeHack 0.05に同梱しました。 CodeHack 0.06に同梱しました。 使い方は簡単です。 たとえば下のような関数fooを定義したとします。 def foo(left, top, right, bottom): "function for test" width = right - left hieght = top

  • Python で日本語を扱う基本をまとめてみるメモ(その2) - 猫(=・ω・=)顔 1.0β

    「その1」のまとめ ⇒Python で日語を扱う基をまとめてみるメモ(その1) - (=・ω・=)顔 1.0β 1行めか2行めで # coding: 〜 を指定する。 '' は通常の文字列。保存した形式のままの「バイト列」。 u'' は Unicode 文字列。多バイト文字環境で1文字を1文字として扱うために必要。 通常の文字列から Unicode 文字列への変換は unicode() 関数を使う。 今日のお題 unicode() 関数をもうちょっと探る Unicode 文字列を作る別の方法 文字コードの変換方法 (1) Unicode 文字列から任意の encoding へ 文字コードの変換方法 (2) encoding-A から encoding-B へ unicode() 関数をもうちょっと探る 前回のおさらい。 以下、通常の文字列(バイト列)は、メンドクサイから全部 euc-

    Python で日本語を扱う基本をまとめてみるメモ(その2) - 猫(=・ω・=)顔 1.0β
    bonlife
    bonlife 2007/08/09
    人生は厳しい
  • メモを書き込みながらコードリーディングする方法 - (ひ)メモ

    調べたいことがあってApacheやらlighttpdやらkeepalivedやらのソースコードを読むときはGNU GLOBALを使ってたんですが、常々、メモが書き込めたらいいのになーと思ってました。 フローのメモ 関数の動作、影響のメモ マクロのメモ とかとか その場では覚えてられるんですが、最近は性能劣化のため日をまたぐと脳内バッファがフラッシュされるようになってきたので、howmでメモったり紙に印刷して手書きでメモったりしてたんですが、なんかどうもいまいち。 GLOBALのページに直接付箋はれるといいのになぁと思ってちょっと探したところ、InternoteというステキなFirefoxのextensionがありました。 こんな感じです: みんなでメモをシェアするのには向きませんが、個人的なメモをとるのにはよさげです。

    メモを書き込みながらコードリーディングする方法 - (ひ)メモ
  • Part3 JavaScriptに学ぶ「言語の拡張性」:ITpro

    サイボウズ・ラボ株式会社に勤めるWebプログラマ。出身は石川県金沢市。21歳でプログラミングに出会い,IT戦士になることを決意。それからというもの,寝ても覚めてもプログラムを書き続け今に至る。はてなでamachangというidでブログを書いてます。 最近,「とんがった」プログラマの間ではJavaScriptがちょっとしたブームです。あちこちの書店で,JavaScriptの書籍を見かけるようになりました。「はてブのホッテントリ」*1にも,よくJavaScriptの記事が入っています(図1)。 その人気を象徴的に示しているが,Shibuya.js*2という団体が開催しているJavaScript関連のイベント「Technical Talk」です。1回目は2006年4月,2回目は6月に開催されましたが,いずれの回も予約が殺到し,たった1日で席が埋まってしまいました。これには「JavaScript

    Part3 JavaScriptに学ぶ「言語の拡張性」:ITpro
  • Learn Python in 10 minutes | Poromenos' Stuff

    NOTE: If you would like some Python development done, my company, Stochastic Technologies, is available for consulting. This tutorial is available as a short ebook. The e-book features extra content from follow-up posts on various Python best practices, all in a convenient, self-contained format. All future updates are free for people who purchase it. Preliminary fluff So, you want to learn the Py

    Learn Python in 10 minutes | Poromenos' Stuff
  • setuptoolsを使ってコマンドツールを作る - aodagの日記

    pasterでsetuptoolsを使った最小プロジェクトを作成する。 paster create hellosetup.pyを編集。 コマンドツールのスクリプトを追加する。 ここでは、helloモジュールのhello関数をpyhelloという名前のコマンドにする。 entory_pointsにconsole_scriptsセクションを作りその中に追加する。 from setuptools import setup, find_packages import sys, os version = '0.0' setup(name='hello', version=version, description="", long_description="""\ """, classifiers=[], # Get strings from http://www.python.org/pypi?%3

    setuptoolsを使ってコマンドツールを作る - aodagの日記
  • Kamosawa wiki

    鴨澤眞夫のPython関係Wiki 鴨澤眞夫は科学史、技術史、プログラミング、モノ作り、金融関係の翻訳や執筆を行っております。 ここはプログラミング言語Pythonに関係する訳書をサポートしたり、書いたものをアップしたりしているページです。 その他のことについては鴨澤眞夫のページをご覧下さい。 訳書サポートページ 目次、正誤表、見PDFなどを置いてあります。 Python Cookbook Python Tutorial ProgrammingCollectiveIntelligence オリジナル記事 自分で書いた記事の草稿などをアップしておきます。 Pythonのヘンなとこ 『Pythonチュートリアル』用の書き下ろし記事の草稿 Whats3onLP 『初めてのPython第3版』用の書き下ろし記事の草稿

  • Python Performance Tips

    Python Performance Tips このページはPythonプログラムの実行効率を改善するさまざまなTipsやトリックの紹介に特化しています。誰から得た情報であっても、その情報源を紹介するつもりです。 "fast python"ページをはじめて書いた1996年以降も、Pythonは著しく変化してきました。このことは、幾つかの規則も変化しているということを意味しています。そこで、他の誰かがこのページのメンテナンスを手伝ってくれるという期待をもって、ページをPython wikiに移動させました。 注意:これらのTipsはいつでも、読者のアプリケーションや、実際に使用するバージョンのPythonで盲目的に受け入れるだけでなく、実際に試してみることができます。 これらの新しく独自に書かれたパッケージ、例えば Pyrex 、 Psyco 、 Weave や PyInline のようなも

  • Lisp500

    [up] | news license installation usage bugs features Is your program large and complex? Are you tired of Greenspunning? Now, in only 500 lines, here we have an informally-specified bug-ridden implementation of Common Lisp, ready to meet your needs. -- Christophe Rhodes Lisp500 is a 500-line implementation of an informally specified dialect of Lisp. It attempts to be not too bug-ridden. Unfortunate

  • wxPython Index

    最終更新日:2007年7月27日 18: Device Context (wxDC) の内容を追加 1: はじめに 2: 最初のスクリプト 2-1: ウィンドウの表示 2-2: エラー内容の書き出し 2-3: ボタンの表示 2-4: ボタンによるイベントの例(ウィンドウを閉じる) 2-5: ウィジェットの位置とサイズ 2-6: ボタンによるイベントの例(テキストのコピー) 3: 基的なコントロール1(単独タイプ) 3-1: 固定テキスト (wxStaticText) 3-2: テキストコントロール (wxTextCtrl) 3-3: ボタン (wxButton) 3-4: トグルボタン(wxToggleButton) 3-5: スピンコントロール (wxSpinCtrl) 3-6: スライダー (wxSlider) 4: 基的なコントロール2(項目選択タイプ) 4

  • wxWidgets でクロスプラットフォーム GUIアプリを作ろう

    最終更新日: 2004-10-08 (公開日: 2004-10-08) UNIX USER誌 2004年8月号 に掲載された記事の元の原稿です。 文中の「原稿執筆時点」は「2004年 6月半ば」を指します。 wxWidgets は Linux, Windows, Mac OS X など多くのプラットフォー ムに対応したオープンソースの GUI ツールキットである。稿で は wxWidgets を用いてクロスプラットフォーム対応の GUI アプリ ケーションを開発する方法を紹介する。 はじめに Unix の大きな魅力のひとつに、強力なコマンドライン処理がある。 zsh などのシェルと perl などのワンライナーを組み合せて、大量 のファイルを一気に処理するときなどは、「これぞコマンドライン の醍醐味」と感じる瞬間である。 一方、Unix の大きな不満のひとつに、凶悪なコマンドライン書法

  • 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

  • http://www.strauss.za.com/sla/code_std.html

    bonlife
    bonlife 2007/06/01
    良い意味で参考にする
  • 気になる開発プロダクツ:第2回 JSON-lib 1.1 - JSON文字列とJavaオブジェクトとの相互変換|gihyo.jp … 技術評論社

    JSON-libの概要 JSON-libは、JavaオブジェクトからJSON形式の文字列を生成したり、その逆の処理を行うJavaライブラリです。Ajaxアプリケーションにおいて、Webブラウザで動作しているJavaScriptのプログラムとサーバ側のプログラムとの間でオブジェクトをやり取りする際に利用できます。JAR形式のファイルをSourceForgeからダウンロード可能です。ライセンスはThe Apache Software License, Version 2.0です。 JDK1.3用(json-lib-1.1-jdk13.jar)とJDK1.5用(json-lib-1.1-jdk15.jar)がありますので、使用するJDKのバージョンに合ったものをダウンロードし、ファイルのパスをクラスパス(CLASSPATH)に設定してください。ここではJDK1.5用による実行例を紹介します。 実

    気になる開発プロダクツ:第2回 JSON-lib 1.1 - JSON文字列とJavaオブジェクトとの相互変換|gihyo.jp … 技術評論社