というわけで、だらだら続けているPython-FIT#4。
今日のお題は「データ構造」でした。
とりあえずSkypeベースだけで書き出し。
やっぱローカルにメモ取るか、Skypeにログを残さんとせっかくの内容をすぐに思い出せないorz…
■リスト型についてもう少し
- pass
■リストをスタックとして使う
- pass
■リストをキューとして使う
- pass
■実用的なプログラミングツール
- reduceはpy3から関数に移動されている
■リストの内包表記
- リストの内包表記を使うべきか、for文で書くべきか。
- http://dsas.blog.klab.org/archives/51742727.html
- やっぱりリストの内包表記は後ろから書く?すごい人は前から出来るのかな。。。
■del 文
- 関係ないけど、Pythonのメモリ管理はガベージコレクション
- Javaみたいな管理方法で3世代
- 循環ガベージコレクションに関しては以下。後で読む
http://www.python.jp/doc/2.5/ext/node24.html
■タプルとシーケンス
- 複数同時代入のアンパックってタプルじゃなくても使えたとは
- リストとタプルの違いって変更可能かどうかってこと?
http://d.hatena.ne.jp/m_py_study/20100127/1264544003 - 関数の返却に多値を利用するとタプルで返却するのでよく使う気がする
■集合型
TODO setに変換して検索するのと、そのまま検索するのとはどちらが高速なのか
■辞書
- キーワード引数でdict型の構成は初耳。
- キーワード引数でやる場合とやらない場合の違いは?
- キーワード引数を使うと変数指定は無理。
>>> k = "abc" >>> dict(k=123) {'k': 123} >>> d = {} >>> d[k] = 123 >>> d {'abc': 123} <h3>
■ループのテクニック
pass
■条件についてもう少し
- 比較の連鎖は便利
- 比較結果の代入はしらなかった
■シーケンスとその他の型の比較
tuple > str > listで比較される。
便利というよりもむしろ怖い。コーディングミスではまりそう。
あ、最後に環境周りに関して
* TeamViewerはHostが重くて使い物にならない。
* もうちょっとペースあげたいな。