Python

tweepyとmechanizeでaccess_token取得

tweepyのテスト用に自分のアカウントのaccess_tokenを取得したかったのだが、 Windows機だとPythonの環境構築が面倒 Ubuntu Server機だとブラウザ入ってない*1 ということで、tweepy+mechanizeでPINコード取ってaccess_tokenを取得するコードをぼちぼち書い…

Pythonでシングルトン風な何か

Life is beautiful: Python Hack : 噛めば噛むほどおいしくなるクロージャの話 ↑を読んでちょっと工夫をした。 先程の記事のコードを改造してクラスに応用する。 class Hoge: @classmethod def get(cls): ret_value = Hoge() cls.get = classmethod(lambda c…

34.FizzBuzz

75→73Byte。

34.FizzBuzz

82→77Byte。

FizzBuzz系3問

499.FibBuzz、500.BuzzFibが来てたので解いた。 ついでに34.FizzBuzzも。

463.Enumeration of divisor

単純な問題の割にはみんな手こずってるな? と思ったが、普通にやるとtimeoutになるため工夫をせねばならない。 トップが何やってるか見当もつかない。とりあえず89byte。

495.Oyster

Rの付く月はカキの季節。70byte。

494.122333

解く。76byte。

492. ttp

問題来てた。解く。50byte。

491. Double quote

print'"%s"'%raw_input()

490. Month Name答え合わせ

そうこうするうちにPost mortem時刻となったので他の人の回答を見る。 Python部門1位の戦法はosコマンドでsed(1)、date(1)を使っていた。あとでsedおさらいしよう。 exec無しだとtime.strftime()ではなくcalendar.month_name[]の方が短く済んだようだ。 あと…

490. Month Name

ひさびさのgolf。とりあえずまとも(?)に解く。153byte。 Python部門トップが意味不明なんですが?

Haskell風range表記

Haskellのリスト表記便利だわーと思ったのでpythonでそれっぽく。使用に堪えるかどうかはしらん。 #!/usr/bin/env python # -*- coding: utf-8 -*- import operator import re # # Haskell-like range notation # def hrange(pattern): _numeric_pattern = r…

日本語を出力したい

python2.x系はunicode文字列を単純に渡してもよきにはからってくれない関数がいろいろある。 python3.xだとunicode文字列を受け入れてくれるようだが、まだ移行に二の足を踏むことは事実。 それはさておき、Python2.xのcurses経由で日本語を出すには下記のよ…

hjklyubnで移動するだけのコード

windowsはサポート外

ProjectEulerはじめました

http://projecteuler.net/ 頭の体操によさそう。とりあえず目指せレベル1*1。 問題12: 「約数の個数が初めて500を超える三角数(Wikipedia.ja)を求めよ」てきとーに。 *1:25問以上達成

Python基礎文法最速マスター

↓に便乗してPython版も書いてみました。 Perl基礎文法最速マスター - Perl入門〜サンプルコードによるPerl入門〜 Ruby基礎文法最速マスター - Route 477 PHP基礎文法最速マスター - Shin x blog ほとんど上記の記事と同じような内容で書いたのでPython入門記…

241.Count diamonds level 1

ひさびさにgolf。一瞬だけトップに立った。

os.chdirで作業ディレクトリを変更する

先日cron経由でpythonスクリプトを定期実行しようとしたのだが、スクリプトが実行されている様子がない。 しかし手動で % python hogehoge.py のように動かすと問題なく動く。なんだこれ。 調べた結果、cronで動かしたスクリプトは作業ディレクトリを/home/(…

nhreplace.py v0.2

vanilla NetHackのコンパイルをする必要があったためsrc/termcap.cのコンパイルにこける原因を探そうとしたら、単にtparm関数のプロトタイプ宣言がおかしかっただけだったらしい。なんじゃこりゃ。 原因がわかったところで、以前に公開したスクリプトを修正…

213.uniq words

とりあえず77byte。

209.number slide

とりあえず72byte。

208.Helloworldless Hello world

ひさびさにgolf。'H', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!'の文字をコード中に含めずハローワールドやれという話。printすらできないからひどい。そしてgorubyがチートすぎて困る。

Python2.6 Released

Python2.6来たそうで。とりあえずお手製スクリプトとかを見直したいところだけど、本格的に切り替えるのはやっぱり外部ライブラリの対応以後なんだろうなあ。 すぐに役立ちそうなところはstr.formatかな。PEP-3101参照。これでもう%s%s%s%sとか書いてえーと…

PythonでCUIをやってみる(windows編) その3

Consoleモジュール使うよりctypes経由でpdcurses叩いた方がいいんじゃないかと思えてきたが、ctypesに慣れてないので後に回すことにする。 閑話休題。前回(id:dplusplus:20080331)の続き。 とりあえずマニュアルの適当意訳やら補足やら。 正確なところは原文…

PythonでCUIをやってみる(windows編) その2

前回(id:dplusplus:20080330)の続き。 Consoleモジュールの解説ページにはなぜか一行入力用のメソッドが載っていない。 探してみると、ダウンロードページのconsole-1.1a1-20011229.zipの中にreadline.pyなるものがあり、それを使えば可能らしいということが…

PythonでCUIをやってみる(windows編) その1

pythonには標準でcursesモジュールがあるものの、windowsでは使えない。 windowsで使える端末制御ライブラリは無いかなーと探してみたところ、Consoleモジュールというものが見つかった。*1 なかなかお手軽に使えるようで面白い。(テスト環境はWin2k + Pytho…

37.Greatest Common Divisor

まともに解く。45byte。 s,t=input(),input() while t:s,t=t,s%t print s チート的解答。27byte。 print[14,3,32768][id('')%3]

133. Set symmetric difference

久しぶりにgolf。64byteで並ぶ。 f=lambda:set(raw_input().split());print' '.join(sorted(f()^f())) 同サイズ別解があるようなので気になる。

101. leap year

101byte→97byte→93byte。