Python
簡単な問があったのでPythonでやってみた - 牌語備忘録 元の問題は、10分でコーディング|プログラミングに自信があるやつこい!!からです。 とりあえず10分目標で何も考えずに書いたのがこれ。 #!usr/bin/env python # -*- coding: utf-8 -*- def cards(…
トラバ送っていきなり答えのリンク張ってしまうのはどうかな? と思ったので、リンクは張らないでおきます>< と思っていたけど、解答編からトラバがきたのでリンク張ります! 問題 pyspa challenge 第1回 - 西尾泰和のはてなダイアリー http://d.hatena.ne…
携帯電話向け「割り勘電卓」を公開します - 頭ん中 さんを見て、PythonでCGIを書く勉強に書いてみました。 本体: http://ama-ch.com/cgi-bin/warikan.cgi 均等割り電卓と同じ「ような」動作をします。携帯向けとか言いながら携帯向けにWebを作ったことなど…
Emacsをめでたくフルスクリーンでも使えるようになり、 コード編集画面 実行・デバッグのためのシェルモード バッファ一覧など という感じで3つのウィンドウを配置するようになりました。 シェルモードのおかげでEmacs上で実行までできて便利だなーと思って…
スコープ関係で悩んだのでメモメモ。 Pythonでは*1、関数内からグローバル変数を参照することができます。 参照 >>> a = 3 # グローバル変数 >>> def test1(): ... print a ... >>> test1() 3 関数内からグローバル変数を参照・表示していることがわかります…
Pythonのインタラクティブシェルはとても便利なんですが、リストやタプルなどのシーケンスの要素が日本語の場合、そのまま表示できません。 >>> lst = [u'あ', u'い', u'う', u'え', u'お'] >>> lst [u'\u3042', u'\u3044', u'\u3046', u'\u3048', u'\u304a'…
なんだかよくわからないうちに終わってしまったんだけど、一応動くようなのでメモ。 Python Challenge のLevel7はPILが必要らしいので、MacPortsでインストールしてみました。 まず、PILがあるかどうか探します。 $ port search pil icompile devel/icompile…
PythonでHTTP周りのあれこれがしたくて調べていたら発見したmechanizeというモジュールを使いたくなって、ダウンロードしようと探していたら、easy_installという便利なモジュールがあるらしい。 こいつがあると、 easy_install モジュール名とやるだけで勝…
3の倍数と3がつく数でahoになるプログラム - メモ帳(はてな) id:hiSAtOがPHPですごく短く書いてて悔しかったので、ワンライナーで書きました。 >>> ["aho" if x % 3 == 0 or "3" in str(x) else x for x in range(1, 51)] [1, 2, 'aho', 4, 5, 'aho', 7, 8…
懇親会でお友達になった宮田君がはてな住人になってくれました! id:j_miyata とりあえず、はてな記法の実験のため、なんかソースを載せる約束したんで、今はやりのナベアツ系プログラムを適当に書いてみるテスト。 http://d.hatena.ne.jp/j_miyata/20080625…
PythonでMySQLを扱うためのモジュールMySQL-pythonをインストールしました。 ダウンロード SourceForge.net: MySQL for Pythonから、MySQL-python-1.2.2.tar.gzをダウンロードする。 インストール ダウンロードしたファイルを解凍するとMySQL-python-1.2.2と…
以前、site-packagesディレクトリの位置がわからなくて放置していたデフォルトエンコーディングが、久しぶりにやったらわかったのでメモ。 以下の内容を、「sitecustomize.py」という名前で保存。 import sys sys.setdefaultencoding("utf-8") このファイル…
初めてのPython p.475 #!/usr/bin/env python # -*- coding: utf-8 -*- """ zoo.py 以下のような関係を持つクラスを定義し、対応する動物にふさわしいメッセージを表示する Animal | Mammal ┌---+---┐ Cat Dog Primate | Hacker """ class Animal: def repl…
「初めてのPython」p.353より #!usr/bin/env python # -*- coding: utf-8 -*- """ reloadall.py 引数として指定したモジュール自身と、そのモジュール内で インポートしているすべてのモジュールをリロードする """ import types def status(module): print …
「初めてのPython」p.344に載っていたdir()のような動作をするソースがなかなか良い感じです。 #!usr/bin/env python # -*- coding: utf-8 -*- """ mydir.py 組み込み関数dir()をカスタマイズする例 指定のモジュールの名前空間に属する変数名の一覧を出力す…
p.265に載っている以下のソース >>> t, f = 1, 0 >>> x, y = 88, 99 >>> a = (t and x) or y >>> a 88 >>> a = (f and x) or y >>> a 99 ふむふむ。 これに以下の説明が続きます。 これで一応、問題はないのですが、このコードは「xが決してfalseになること…
初めてのPython p.167 printステートメント オブジェクトのデータをテキストに変換して標準出力ストリーム(stdout)に書き込むステートメント Hello, Worldでまず触れるステートメントだし、これを知らない人はいませんね。 >>> X = 256 >>> print X 256 こ…
初めてのPython 第2版作者: マークルッツ,デイビッドアスカー,Mark Lutz,David Ascher,夏目大出版社/メーカー: オライリージャパン発売日: 2004/11メディア: 単行本購入: 4人 クリック: 286回この商品を含むブログ (104件) を見る Python クックブック 第2版…
Twitterで友達の発言を眺めていると、 「@hoge バカスwww」 なんて発言があって「@hogeってフォローしてたっけ?」なんてことがよくありますよね。・・ありますよね?とにかく僕はよくあります。 そんな僕のジェラシーを解消すべく、python-twitterを利用し…
課題の英語に追われるだけで1日が終わるのはまっぴらゴメンだったので、少しだけPythonで遊びました。 これからpython-twitterで色々遊ぶのに、フレンドリスト*1をファイルに保存しておくと便利なので、さくっとファイルに保存するコードを書きました。 pyth…
codeなにがし::すべての文字を各一回使ってできる文字列のパターン 回答者様の答え(アルゴリズム)がとても綺麗だったので、勉強がてらPythonで書いてみました。 #!usr/bin/env python # -*- coding: utf-8 -*- def pat(arr, level=0, base=""): num = len(…
昨日1日かけてやっとこさインストールした! EclipseWikiが非常に参考になったので、こちらとあわせてどうぞ。 必要なものをダウンロードする Eclipse Eclipse Downloadsへアクセス 「Eclipse Classic 3.3.2 - Mac OS X (137 MB)」をダウンロードする!最初J…
昨日、フレンドリストを100人以上取得するためにtwitter.pyを色々いじりました。その結果、 users = api.GetFriends(取得ページ番号) こんな感じで呼び出せるようになりました。ページ番号で3を指定すると、ID*1順で201〜300番を取得します。 でもこれだとい…
どう書くorg:METHINKS IT IS A WEASELより、yattomさんの解答を読ませて頂きました。 勝手にコメントで解説?します。解説というかメモかな。 お題: ランダムな文字からMETHINKS IT IS A WEASELを作るプログラムを作れ。 簡単に流れを書いてみます。 1:…
python-twitterで遊んでみたよ!とりあえず基本的な使い方のお勉強。 ちなみにドキュメントはここにあるからね! http://static.unto.net/python-twitter/0.5/doc/twitter.html モジュールの機能自体シンプルだから、ドキュメントも短くて読みやすいです。僕…
スレッドのロック p.374 RLockオブジェクトを使ってクリティカルセクション(ロック〜アンロック)を作る例 lock = threading.RLock() #クリティカルセクションを開始 try: # スレッドの実行コード finally: lock.release() #ロックを解放 pythonでCGIを利用…
python-twitterというものを使うと簡単にTwitterのAPIなどで遊べると噂に聞き、導入してみました。 まずは必要なものをダウンロードする python-twitter - Google Codeで、python-twitter-0.5.tar.gzをダウンロードする。 Python Package Index : simplejson…
アトリビュートやメソッドのカプセル化 p.273 Pythonでアトリビュートやメソッドをカプセル化するためには、2つの方法がある。 ・アトリビュート名やメソッド名の先頭にアンダースコアを1つ(_)つける 名前の先頭にアンダースコアがひとつついたアトリビュー…
リスト内包表記(リストコンプリヘンション) p.239 文字列の各文字を文字コードに変換してリストを作成 >>> char = [] >>> for s in "Python": ... char.append(ord(s)) ... >>> char [80, 121, 116, 104, 111, 110] これをリスト内包表記で書いたものが、…
codepad(http://codepad.org/)という素晴らしいサイトを昨日初めて知り、FizzBuzz問題でもやろうと思って書いてみました。 for n in range(1, 101): if n % 15 == 0: print "FizzBuzz" elif n % 3 == 0: print "Fizz" elif n % 5 == 0: print "Buzz" else: p…