|
検索
カテゴリ
メモ帳
以前の記事
最新のコメント
ブログパーツ
ファン
|
2011年 12月 28日
Pythonで辞書型から値を取得するとき、キーが存在しない場合は
KeyErrorが発生します。
実行してみると、見事エラーになります。
これまでは、こんなかんじでキーの存在チェックをしてました。
でも、getを使えばお手軽に同様の処理が行えます。
実行してみると狙い通り。
知らなくて、今まで損してた気分です。 これは便利。 2011年 12月 06日
Pythonのモジュールをインストールするためのツールに
easy_installがあります。 いままで、 http://peak.telecommunity.com/dist/ez_setup.py ここのファイルをダウンロードして python ez_setup.py を実行していたのですが、Ubuntuだと sudo apt-get install python-setuptools これでOK。 easy_installが使えるようになります。 2011年 11月 30日
とあるプログラムが出力したログファイルを解析して、各関数の処理時間を計算するスクリプトをPythonで書いているときはまったのでメモ。
ログファイルの出力はこんな感じ。
'20:14:14.873' - '20:23:53.822'を実行して関数Aの実行時間を求めたい。 時間を計算する部分の抜粋。
http://docs.python.org/library/datetime.html datetime.datetimeの引数は year, month, day, hour, minute, second, microsecond, tzinfo year, month, dayは適当に同じ日付を入れておきます。 hour, minute, second, microsecond この最後の引数がmicrosecondとは思わずmillisecondと思っていてはまりました。 2011年 05月 07日
リストにappendしながらデータを作り、タブルに変換して値をリターン
ってしたかったんですが、変換方法がわからんかったのでメモ タプルからリストは、listを使います。 >>> tuple_value = (1,2,3,4,5) 逆にリストからタプルにするときはtupleを使います。 >>> list_value = list(tuple_value) いままでlistってよく変数名に使用していたような・・・ 知らない間に関数を上書いていたとは。 2011年 03月 13日
ヤシマ作戦
「アニメに出てくる作戦名で盛り上がっててうぜーwww」 ・・・っていう意見もあるようですが、個人的には こういうノリ嫌いじゃないです。 私も節電に協力したいのですが、普段からTVもエアコンもつけない (というか持っていない)サボテンのような生活を送っているので、 削るものが・・・ と思っていたのですが、どうやら電気炊飯器って結構電力を 消費するようです。 普段、電気炊飯器でお米を炊いているので、これを使用せず ガスで炊飯してみました。 ※火を使うので、火災に注意! 参考にしたサイトはこちら。 文化鍋でメシを炊く 今回、2合のお米を炊いてみました。 お米は、電気炊飯器の内釜を使用して磨ぎます。 水加減も内釜に引いてあるラインを参考に。 要するに、ここまでは普段電気炊飯器でお米を炊くのと 同じ手順です。 ![]() 内釜から鍋に磨いだお米と水を移します。 ![]() 炊飯前に1時間程度水につけておくとおいしく炊き上がるそうですが、 普段はそんなことしないので、いきなり炊飯に入ります。 蓋を閉めて強火で沸騰するまで加熱。 2,3分で沸騰すると思います。 蓋が軽い場合は、茶碗などを重石としておいておくとよいかと。 ![]() 沸騰したら、中火程度に火力を落とします。 この状態のまま、湯気があまりでなくなるまで放置。 大体5~10分程度かと思います。 ![]() 中火にしている時の鍋の中の様子。 ![]() 湯気があまり出てこなくなったら、弱火にします。 この状態で5分程度放置。 ![]() 弱火のときの中の様子。 ![]() 最後に10秒ほど強火にして、火を切ります。 5~10分程度蒸らすため、そのまま放置。 ![]() 30分かからずお米が炊けました。 お味ですが、スイッチ一つで炊き上がるより、火加減を調節 したりと手間をかけたのでという精神的な面もあるのでしょうが、 普段よりおいしく感じました。 2010年 12月 13日
Windows端末でタスクスケジュールを使用し、定期的にとあるデータを作成しています。
作成したデータをLinuxのWebサーバーに自動的にアップロードしたい。 Linux側でftpサーバーを起動していれば、ftpコマンドでアップロード できるのですが、面倒なのでsshしかサービスを起動してません・・・ sftpを使えばよさそうなのですが、Windows標準コマンドでは用意されていない(多分) WinSCPを使えばGUIで簡単にファイルをアップロードできるのですが、 http://www.tab2.jp/~winscp/ ※普段お世話になってます。 今回は、自動処理したいのでバッチファイルにアップロードの処理を仕込みたい。 WinSCPをコマンドで操作する方法はどうやらなさそう。 いろいろ調べた結果、Puttyに含まれているexeが使えそうです。 http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html こちらから、「psftp.exe」をダウンロード。 コマンドの簡単な使い方はこんな感じ。 psftp [ログインユーザー]@[サーバー名] -pw [パスワード] -b [実行したいコマンドを書いたテキスト] 実際に使っている内容 バッチファイル psftp root@192.168.1.1 -pw password -b upload.txt upload.txtの内容 cd /var/www/public これでWindowsのタスクに登録したバッチでデータの作成から サーバーへのアップロードまで一括で行なえるようになりました。 2010年 07月 21日
久しぶりにJDBCでMySQLに接続しようとしたときはまったのでメモ 構成は・・・ 開発端末(WinXP) MySQLサーバー(Debian) まず、MySQLの外部接続許可 以前調べていたけど、片言過ぎて意味わからず。 MySQL 外部接続許可 まずは開発端末から接続できるようにMySQLを構成。 ※開発用なので、とりあえず動けばいい(セキュリティ完全無視)で設定しています。 1.bind-addressの編集 # vi /etc/mysql/my.cnf bind-addressをコメント #bind-address = 127.0.0.1 2.mysqlユーザー(root)に外部接続許可の権限付与 # mysql -uroot -pPassword これで、外部からMySQLに(とりあえず)接続できるようになるはずです。 MySQL用のJDBCドライバ http://www.mysql.com/downloads/connector/j/ ここから、mysql-connector-java-5.1.13.zipをダウンロード。 解凍すると、mysql-connector-java-5.1.13-bin.jarが入っているので、 開発環境のビルドパスに含めます。 コネクション獲得のサンプル。 try { 2010年 06月 14日
mantis1.2系にバージョンアップしたら、メインページに表示していたニュースが非表示に・・・
ニュース編集のタブも消えてしまいました。 どうやら、1.2系からはニュースの表示・非表示がオプションで指定できるようになり、 かつデフォルト非表示になった模様。 設定ファイルのconfig_inc.phpに
この設定を追加すれば、従来どおりニュースの表示と編集が行なえるようになります。 機能自体削除されたのかと一瞬あせりました。 2010年 04月 26日
「テストコードは大切だよね」という話は良くしますが・・・
恥ずかしながら、テストコードの書き方を知らないので、基礎から調べてみます。 参考にしたのはここ。 http://www.python.jp/doc/2.5/lib/module-unittest.html 1.まず、unittestをimportして、unittest.TestCaseを継承したクラスを作成します。 2.テストを行う前に、オブジェクトの作成などの事前処理を行いたい場合は、 「setUp」というメソッドを宣言します。 3.テストメソッドを作成します。 4.unittest.main()を呼び出すと、テストクラスの実行が開始されます。 ・・・といっても良くわからないので、ただ関数名を表示するだけの テストケースを作成して動かしてみます。
実行してみると、こんな結果になります。
「setUp」は、テスト開始前に一回のみ実行されると思っていたのですが、 テストケース実行前に必ず実行されることが保証されているようです。 完全に勘違いしてました。試してみてよかった~ 次に、わざとエラーが発生するメソッドを実行してみます。
実行してみると、以下の結果が得られました。
途中にエラーとなるメソッドがあっても、最期までテストは実行されます。 また、最初に表示される「E..」ですが、どうやら 「E」エラー発生 「.」正常終了 という意味のようです。 実際のテストでは、エラー検知ではなく値のチェックを行う ケースが多いと思います。 こんなサンプルを作成して、実行してみました。
実行してみると、以下の結果が得られます。
なんとなく、わかってきました。 2010年 04月 18日
土日、自宅でプログラムのお勉強をするときは適当な音楽を聞いています。
でも、あまり手持ちのmp3が多くないので飽きてきました。 そこでネットラジオ。 リンクは今回試したlivedoorのねとらじです。 http://ladio.net/ 各々の紹介ページを見てみると再生URLとして http://std1.ladio.net:8090/umc25.m3u こんな感じで記載があると思います。 これをコピーしておきます。 再生するには、標準でインストールされている 「Rhythmbox ミュージック・プレーヤー」を使用しました。 [アプリケーション]-[サウンドとビデオ]-[Rhythmbox ミュージック・プレーヤー] で起動します。 画面を起動すると、メニューのアイコン、一番右に「新しい局」という ボタンがあるので押します。 「新しいインターネット・ラジオ局」という画面が出てきます。 インターネット・ラジオ局のURLに先ほどコピーしたURLを張り付けて追加。 左側の「ライブラリ」-「ラジオ」を選択すると、先ほど入力したURLが 追加されていると思います。 追加したURLをダブルクリックすると放送が始まるはず。 これで、勉強中の音楽に困ることがなくなりそう。
|