強火で進め

このブログではプログラム関連の記事を中心に書いてます。

Python

テキストファイルを読み込む場合に改行に注意

テキストファイルを読み込む場合に気をつけないといけない改行についての解説をします。今回読み込むテキストファイルの内容は以下となります。test.txt 111 222 333 444 テキストファイルを読み込むプログラムは以下となります。 f = open('test.txt', 'r')…

Pythonの islower() と isupper() の判定処理のワナ

islower() と isupper() の関数ですがリファレンスをざっと確認したり、他の言語の経験のある方は英文字の小文字、大文字を判定する関数だと認識がある人も多いのではないかと思います(自分もそうでした)。しかし、注意してください。ほぼその認識で大丈夫な…

anchor

anchorを設定することでウィンドウのどの位置に配置するかの指定ができます。このように使います。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() root.geometry("300x300") root.title(u"タイトル") button = Button(root, text="CENTER") bu…

Tkinter入門

とりあえずこれだけの記述でウィンドウが表示できます。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() root.mainloop() ウィンドウのタイトルは title() メソッドで設定します。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() …

padx、pady

padx, padyはスレイブウィジェット(ボタンやリストボックスなどのパーツ)の外側に確保されるパディング(padding=詰め物)幅を指定します。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() root.geometry("100x100") root.title(u"タイトル") but…

ipadx、ipady

ipadx, ipadyはスレイブウィジェット(ボタンやリストボックスなどのパーツ)の内側に確保されるパディング(padding=詰め物)幅を指定します。ipadx でX方向(左右)にパディングを行います。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() root.ge…

fill

fill は指定の方向の限界まで引き伸ばし(fill=満たされ)ます。たとえばこのように X を指定するとX方向へ引き伸ばされます。 # -*- coding: utf-8 -*- from Tkinter import * root = Tk() root.geometry("100x100") root.title(u"タイトル") button = Button…

Windowsにpygameをインストールする

Windowsにpygameをインストールする手順を説明します。 もちろん先にPythonをインストールしておく必要がありますのでこちらは事前にインストールしておいて下さい。1. 以下のURLを開く。 pygame - python game development http://www.pygame.org/download.…

指定のファイルを実行する

指定のファイルを実行するサンプルです。 Windows前提で書いていますが実行しているファイルなどを変更すればその他の環境でも同様なものが作成できます。プログラムの実行は以下の様にコマンドラインから実行することを前提としています。 python test.py …

Windows環境でPythonの各種モジュールなどのインストールでの注意点

毎回、注意点を書くのも効率が悪いのでここに注意点をまとめておきます。 Pythonのバージョンの確認 まずはPythonのバージョンを把握していることが重要です。バージョン確認の簡単な方法としてはコマンドラインで python とタイプし、Pythonを起動する方法…

コマンドライン引数の処理

sample.py import sys print sys.argv for arg in sys.argv: print arg コマンドラインからこのように実行すると python sample.py a b cこのようになる。 ['sample.py', 'a', 'b', 'c'] sample.py a b c

バイナリデータの入力処理

次に unpack() 関数の解説をします。今回はバイナリエディタで見たときに以下のようなデータとなっているファイル(test.dat)の内容を取り込むサンプルを記述します。 01 02 03 04こちらのファイルから1バイト読み込む場合はこのように書きます。 from struct…

バイナリデータの出力処理

いまどきバイナリデータを加工するような人は画像処理や圧縮、暗号などを扱ってる様な人しか居ないかも知れませんがちょっと必要が有って調べたので書いときます。Pythonでバイナリデータを加工するときは pack() 、 unpack() 関数を使用します。 公式のドキ…

PythonでSWF生成

この前公開されたSWFのフォーマット仕様書を元に何とか指定の文字列(デバイスフォント)を埋め込んだSWFファイルを作成するプログラムを完成。まあ、どうということはないプログラムですが初めてのSWF生成なので「Hello World」レベルからってことで…。これ…

hetemlでPythonを使う

今度はhetemlでPythonを使おうとして今回もまたまたはまったのでメモ。hetemlのサーバ、ここを見ると確かに使えるはずだけど動作せず。 http://heteml.jp/service/function/PerlやRubyの情報はここにあるけどPythonについては無し。 http://heteml.jp/suppor…

クラス定義

さくらインターネットのサーバではクラス定義でこんな感じで継承しないのに () を付けるとエラー扱いとなるみたい。 class Test(): ちゃんとこのように書けば大丈夫でした。 class Test:

別ファイルのインポート

さくらインターネット上、別ファイルのインポートをするときにはまったのでメモ。原因を調査するためプログラムをできるだけ単純化して以下のようにしてもエラーが発生した。test.cgi #!/usr/local/bin/python # -*- coding: utf-8 -*- import cgi import cg…

さくらインターネットでPythonを使う

さくらインターネットでPythonを使うときにちょっとはまったので使い方をまとめておく。としあえず自分は「スタンダード」で契約しているので「スタンダード」での動作説明となります。設置方法の説明は公式のサポート情報がこちらにあります。 http://suppo…

日付フォーマットの指定

# -*- coding: utf-8 -*- import pyExcelerator import datetime w = pyExcelerator.Workbook() ws = w.add_sheet(u'シート(1)') fmts = [ '[$-411]ge.m.d', u'[$-411]ggge"年"m"月"d"日"', 'yyyy/m/d', u'yyyy"年"m"月"d"日"', u'h"時"mm"分"ss"秒"' 'YY/M/…

セルの幅の設定

pyExceleratorのセル幅の設定は中々厄介な特徴がありました。幅指定で指定した値が生成されたExcelファイルで確認してもポイント、ピクセルのいずれの値にもあてはまらりませんでした。ExcelはTwipという単位も使っているようなのでWikipediaのTwipのポイン…

罫線

# -*- coding: utf-8 -*- import pyExcelerator w = pyExcelerator.Workbook() ws = w.add_sheet(u'シート(1)') for i in range(18): brd = pyExcelerator.Borders() brd.left = i brd.right = i brd.top = i brd.bottom = i style = pyExcelerator.XFStyle(…

パターン

# -*- coding: utf-8 -*- import pyExcelerator w = pyExcelerator.Workbook() ws = w.add_sheet(u'シート(1)') for i in range(18): pat = pyExcelerator.Pattern() pat.pattern = i style = pyExcelerator.XFStyle() style.pattern = pat ws.write(i*2, 0,…

セルの背景色設定

セルの背景色を設定。使用できる色の指定範囲の記述が見つからなかったためテストしたところ0x00〜0x50の範囲で使用できそう。※明確な資料が見つかったら追記予定。もし知ってるひとがいたら教えて下さい08/03/26追記:付属のサンプル format.py では0x00〜0x…

日本語対応

普通にUTF-8で記述するだけで「シート名」「値」「ファイル名」全てで問題なく日本語が使用できるみたいです。 # -*- coding: utf-8 -*- import pyExcelerator w = pyExcelerator.Workbook() ws = w.add_sheet(u'シート(1)') ws.write(0, 0, 1) ws.write(1, …

セルにデータ入力

参考にしたファイルはnumbers.py。 import pyExcelerator w = pyExcelerator.Workbook() ws = w.add_sheet('test') ws.write(0, 0, 1) ws.write(1, 0, 2) ws.write(2, 0, 3) ws.write(0, 1, 10) ws.write(0, 2, 100) ws.write(1, 1, 'abc') w.save('test.xls…

とりあえず空のファイルを作成

サンプルのexamplesフォルダにあるmini.pyが参考になりそうなのでこちらをベースに作成。サンプルではモジュールのインポートを from pyExcelerator import * と記述してますがこちらの記述方法だとなにかと副作用が有ると見かけたので import pyExcelerator…

PythonでExcelファイル作成をするモジュール

PythonでExcelファイルを作成するにはどうすれば良いのだろと検索したところ以下のブログを発見。 [思] PythonでExcelファイル作成 http://freethink.way-nifty.com/action/2006/05/pythonexcel_0f8f.html PythonでExcelファイルを生成:pyExcelerator - 逃…

if文

まとめサンプル if a < 5: print "a" elif a == 10: print "b" elif a < 15: print "c" else: print "d" ※他言語では else if とよく記述される部分がPythonでは elif となることに注意。 個別サンプル 条件がTrueのとき print "1" if 1: print "2" print "3…