2010-05-01から1ヶ月間の記事一覧

[GTK+] 描画する色を指定する

線を描画するの続き。 前回のプログラムでは、線の色として、そのウィジェットの前景色として指定されていたものをそのまま使っていた。しかし、描画する色を明示的に指定したい場面も多々ある。そこで今回は描画色を指定する方法について。点を打つときに使…

パフォーマンスを最大化するために必要なこと

Time Power を引き続き読んでいる。最大のパフォーマンスを得るための12個の実証済みの原則 (Twelve Proven Principles for Peak Performance) という項目があった。とりあえず気になったものをば。 時間を上手く管理するため、自分を「工場」に見立てる 工…

[GTK+] 線を描画する (解説編)

さて昨日の線描画プログラムの解説をば。長いよ。w 28 GtkWidget *window, *area; ... 38 area = gtk_drawing_area_new(); GtkDrawingArea ウィジェットを生成する。 GtkDrawingArea というのは GtkWidget の派生オブジェクトなのだが、他の派生オブジェク…

[GTK+] 線を描画する

とりあえずウィンドウ内に線を引いてみた。 時間がないので説明は明日以降で(ぉぃ 1 #include <gtk/gtk.h> 2 3 static void destroy(GtkWidget *window, gpointer data) 4 { 5 gtk_main_quit(); 6 } 7 8 void draw_point(GtkWidget *area, gint x, gint y) 9 { 10 gdk_d</gtk/gtk.h>…

スキルアップをより効果的に行うための6つの方法

Time Power: A Proven System for Getting More Done in Less Time Than You Ever Thought Possible という本をSafariで読んでる。この中で、効果と効率性を高めるために自己をプログラムする方法というのがいくつか紹介されていた。 注:以下は、同書で紹介…

GTK+ でプログラミング:基本形

とりあえず、GTK+ で何かを作るときに基本形となるものをば。これを拡張していけば大抵のものは作れるかと。wちなみに、GTK+ の関数仕様については、DevHelp というマニュアルを使って調べるのが便利。メニュー Application → Programming の中に入っている…

Test::Continuous

継続的テスト(Continuous Testing)というのに興味を引かれて使ってみる。上記の紹介ページによると、Continuous Testing を取り入れることによって、締め切りまでに作業完了できる確率が3倍になるとのこと。なんて素敵なんだ!w で、これを Perl で実現した…

Dictionaries

定義 波カッコ { } を使う。 >>> x = {1: "one", 2: "two"} 値の取得 配列と同様。 >>> x[1] 'one' >>> x[2] 'two' 値のセット keyを指定して値をセットすることができる。 >>> x["first"] = "one" >>> x {1: 'one', 2: 'two', 'first': 'one'} 値の取得(get…

ぱいそんー

The Quick Python Book, Second Edition を読んでる。 自分用の覚え書き。Ch.3 The Quick Python Overview 3.2 Built-in data types

単語とか

aghast 仰天する admonition 訓戒 stagger よろめく、ふらつく faculty 才能、機能、教授会 rabid 熱烈な chiding 叱責 poignant 痛烈な disquieting 心を乱す cast in iron がんじがらめの(?) to a large extent 大部分は weakling 弱虫 flee 逃げる(pp. fl…

未来は予測できないが、創ることはできる。

A Class with Drucker: The Lost Lessons of the World's Greatest Management Teacher を読んで。Ch.11 You Can't Predict the Future, But You Can Create It.将来に向けての計画を立てることは重要だ。しかし難しいのは、将来、自分の周りの状況がどう変…

文字列

文字列は str オブジェクトという形で扱われる。 delimiting strings single quotation(') double quotation(") triple single quotation(''') triple double quotation(""") 実際の改行文字(エスケープ文字の \n ではなく)を含むことができる """実際の 改…

Tuples

List とほぼ同様。ただし、生成時に値を代入したら、それ以降の値の変更はできない。 List と同様、どんな型の要素も含むことができる。list や tuple も含むことができる。また、値を操作しない関数やメソッドは list 同様に使用できる。 生成 角カッコ [ ]…

Lists

代入 x = ['first', 'second', 'third', 'fourth'] 値の参照 x[0] → 'first' x[2] → 'third' x[-1] → 'fourth' x[1:2] → ['second'] x[1:3] → ['second', 'third'] x[1:] → ['second', 'third', 'fourth'] x[-2:-1] → ['third'] index に負の値を指定すると…

演算用の関数

built-in functions >>> round(3.49) → 3 library module functions >>> import math >>> math.ceil(3.49) → 4 math モジュールは、複素数以外の数の演算に使用できる。複素数演算のための cmath というのもある。

Numbers

以下の4種類がある。 Integers (1, -3) Floats (3.0, 31e12) Complex numbers (3+2j, 4.2+6.3j) Booleans (True, False) 演算で使用された時は、True=1, False=0 として振る舞う。たとえば True * 2 = 2。

File objects

ファイルアクセスは、File object を通じて行う。 ファイルオブジェクトは open 関数によって取得できる。 >>> f = open("test.txt", "r") 第2引数で open モードを指定する。 "r" : 読み取り "w" : 書き込み(上書き) "a" : 追記 その他、以下の文字を付加し…

Sets

List などと同様。ただし、Setにおいては順番は無視され、ある値が集合の中に含まれているか否かが重要となる。 定義をするときは、set([ ... ]) のようにする。 >>> x = set([1, 2, 4, 2, 6, 1]) >>> x set([1, 2, 4, 6]) >>> 1 in x True >>> 5 in x False