得点による成績わけ

プログラミングの入門本によくある、入力された点数を元に成績を出すプログラムを書く。普通に書けばこんなかんじになる。 プログラムI #!/usr/bin/env python score = 90 if 0 <= score < 40: print "you are D." elif 40 <= score < 60: print "you are C.…

Pythonで日本語

Pythonで日本語を扱うには、Unicode型で扱うのが楽な様だ。 参考 PyJUG 日本語環境でのPythonPythonには文字列型とUnicode型がある。 >>> Hokkaido = "北海道" >>> print Hokkaido 北海道 >>> type(Hokkaido) <type 'str'> >>> Hokkaido '\xe5\x8c\x97\xe6\xb5\xb7\xe9\x</type>…

Pythonのenumerateでハマった

Pythonではリストなどにループをかける場合、普通にこんな感じで書くわけだ。 >>> a = [0,1,2,3,4,5] >>> for x in a: ... print x, ... 0 1 2 3 4 5 インデックスが必要な場合はenumerateを使う。 >>> a = [0,1,2,3,4,5] >>> for i,x in enumerate(a): ... …

ファイルから読み込んでディクショナリに

20080911000200 2 20080911000300 6 20080911000401 10 20080911000500 11 20080911000600 12 20080911000700 16 :こんな感じに記述されたテキストファイルがある。実際にはWebにあるので以下のように読み込む。 In [1]: import urllib In [2]: url = "http:…

Pythonで外部プログラムを動かす

id:y_yanbeさんのコメントで、任意のコマンドの出力結果をcommands.getoutput()で得られることに気が付いた。今までコマンドの出力結果を得るというプログラムを書いたことがなかったので、てっきりos.system()で得られるのだと思っていた。返ってくるのはプ…

screenletsのウィジェットを作る

LinuxにはScreenletsというものがある。便利なのだが、絶対的な数が少ないのが残念。なので、東京電力が公開している雨量・雷観測情報を表示するものを作ってみた。スキンがアレなのは、センスとGIMPの使い方が分からないせい。 関東の雷の季節は終わったが…

pythonでホームディレクトリを得る

Pythonのプログラムを書いているのだが、参考にしているソースで実行しているユーザーのホームディレクトリを以下の方法で得ていた。 import commands home = commands.getoutput("echo $HOME") 何かスッキリしないのでググっていたら次の方法があった。 imp…