Python導入
Information
version | date | memo |
---|---|---|
0.1 | 2013/03/30 | first creation |
1.0 | 2013/03/31 | 基本的な項目まとめ完了 |
TODO
- クラス設計関連
- グラフィック
概要
Pythonをやることになったので、とりあえずの使い方まとめ
はろわ〜
#!/usr/bin/python # coding: utf-8 # pythonコマンドのパスと、文字コードは環境により適宜変更すること print "Hello world"
四則演算
C/Java等とほぼ一緒。
冪乗(**)が存在する。
インクリメント(++)/デクリメント(--)が存在しない。
ループ等のインデント
y = 0 for x in range(0, 5): y += x print y
とすると 10 が表示されるが、
y = 0 for x in range(0, 5): y += x print y
とすると
0 1 3 6 10
が表示される。
ループ等のスコープは、インデントで判断するので注意。
型宣言
型宣言なし
動的型付けなので、明示的に小数点を用いたい場合は、小数で初期化する。
y = 0.0 for x in range(0, 5): y += x print y
とすると 10.0が表示される。
文字列整形
print "%d"%200 print "(%d, %d)"%(10, 20)
注意点としては、引数を2つ以上取るようなフォーマットは、配列を渡す必要があるという事。
他の変換タイプについては、以下を参照の事。
http://docs.python.jp/2.5/lib/typesseq-strings.html
ループ
while文は存在する。
基本的にforeach文。
C言語ライクなfor文は無い。
for/while-else文が存在する。
for i in range(2): print i else: print "else i=%d"%i
とすると
0 1 else i=1
とelse文が表示されてしまう。
for i in range(2): print i if i == 1: break; else: print "else i=%d"%i
break文を入れるとelse文は実行されない。
while文も同様。
条件文
if〜elif〜else文。
ループと併用する場合はelse文のインデントに注意!!
コメント
- """〜"""の改行有り文字列囲み。
- #以降の文字列がコメント(1行)
関数
defで定義。
returnで戻り値。
C言語のvoidに近いかなぁ。。。
データ構造
リスト
Haskellライクな初期化方法([1..3] = {1,2,3}みたいなのは無理)
内包表記は存在する。([x**2 for x in range(3)] とかができる)
Matlabライクなスライスも存在。
list=[x**2 for x in range(5)] for x in list[:3]: print x for x in list[3:]: print x
とすると
# 前者(1〜3番目を取得) 0 1 4 # 後者(3番目より後を取得) 9 16
となる。
filter(), map(), reduce()が存在。使い方は下記参照。
Python の map, filter, reduce とリスト内包表記 | すぐに忘れる脳みそのためのメモ
タプル
リストとだいたい同じような事ができるが、違いとしてはタプル内の要素は変更不可能である事。
タプルとリストの違い - Python学習日記
透過設定
Information
version | date | memo |
---|---|---|
0.1 | 2013/03/30 | first creation |
概要
ターミナルを透過させたーい
インストール
以下をインストール
- xcompmgr
- transset-df
transset-dfがパッケージに無いと怒られる場合、以下のサイトでパッケージ取得
Ubuntu – Error
注意) transsetコマンドだと透過アプリケーションの指定が上手く行かない
おまけ
Guakeターミナルをインストールする。
以下のパッケージをインストール
- guake
よくわからないが、何故か自動起動設定になってしまった。
LXDEの場合、以下のファイルを削除することによって、自動起動を解除。
/etc/xdg/autostart/guake.desktop
透過設定
参考サイト一覧
LXDEでの自動起動: へろへろ日記
Gnomeの場合は下記で透過設定ができるっぽい
Ubuntu Tips: 端末(Terminal)を完全透過にする
xcompmgrの設定例
http://d.hatena.ne.jp/Okumatsu_Hiroshi/20100523/1274626592