FrontPage / Learning Programming / 2015 / 2nd Semester

Learning Programming

概要

  • 自然言語処理100本ノックを,Python の言語仕様,good parts,best practice,よくハマる罠などを確認しながらじっくり解く.

2015年 後期

日時
月曜日 13:00-14:30
参加者
横井,上村,ダワ,ゼン,Diana
TA
山口,佐々木,五十嵐

参考資料

  • 分からないことがあったら…
    • Python の言語仕様や「Python っぽい書き方」が知りたければ Python 関係の資料にあたる.
    • 「オブジェクト指向って何?」「型って何?」「スコープって何?」という疑問は,プログラミング全般に書かれている書籍や,別言語の参考書で解決できるかもしれない.
    • Linux コマンドの使い方や,バージョン管理ソフト(e.g. git), ターミナルマルチプレクサ(e.g. tmux), パッケージ管理ソフト(e.g. homebrew), エディタ(e.g. vim)などの使い方で困っているならそれ専用の資料に当たる.
    • 何について困っているのか考えよう.

Python

プログラミング全般,各種パラダイム

  • 『プログラマの考え方がおもしろいほど身につく本』
  • 『コーディングを支える技術』(目次)
  • 『リーダブルコード』

Linux,各種ツール

  • 全般
    • 『新しい Linux の教科書』
  • シェル
    • 『zsh の本』
  • バージョン管理
    • 『GitHub 実践入門』

予定・記録

#01. 2015/10/19(Mon) 14:40-17:00

Tutorial (佐々木)

  • 環境構築(environmental construction) slide(ja), slide(en)
    • 研究室の計算機環境,サーバへのログイン,Python の実行,virtualenv,Jupyter
    • (付録) tmux, linux コマンド
  • コードのアップロード方法(how to upload your source codes) slide(ja), slide(en)

解いた問題

  • 000, 001

Tips

  • インデントは4スペース (ソフトタブ)
    • エディタで Tab キーを押したときに '\t' ではなく半角スペース×4によるインデントが挿入されるように各自設定
  • 変数名関数名を,キーワードや組み込みの関数名とぶつけない
  • 組み込みのメソッドや関数の仕様の確認方法
    • Python 2.7.10 documentation
      • 困ったことがあったらまず公式ドキュメントを確認
    • Dash for OS X (documentation をローカルで読む.有償ソフト.)
    • interactive shell (ipython) 上で `help(command)`, `command?` (e.g. `str.join?`)
    • Jupyter 上でメソッドにカーソルを合わせて Shift+Tab
  • tuple は immutable
    In [1]: a = (1,2)
    In [2]: b = (3,4)
    In [3]: c = a
    In [4]: a += b # a に新しいオブジェクト (1,2)+(3,4) = (1,2,3,4) を再代入
    In [5]: a
    Out[5]: (1, 2, 3, 4)
    In [6]: c
    Out[6]: (1, 2) # c が指すメモリ領域は [1] で確保されたもの
  • enumerate(): list を添え字付きで走査するときに便利

© Inui-Suzuki Laboratory 2010-2018 All rights reserved.
Recent Changes
2020-06-25 2020-06-17 2020-06-16 2020-06-10 2020-06-08 2020-06-01 2020-04-10 2020-04-02 2020-02-22 2019-06-07 2019-06-06 2019-05-23 2019-04-19 2019-04-08 2019-04-07 2019-04-03 2019-04-01 2019-03-08 2019-03-07 2019-03-01 2019-02-28 2019-02-15 2019-02-14 2019-02-13 2019-02-12 2019-02-08 2019-02-07 2019-02-06 2019-02-05 2019-02-04 2019-02-01 2019-01-31 2019-01-30 2019-01-29 2019-01-28 2019-01-26 2019-01-25 2019-01-24 2019-01-23 2019-01-22 2019-01-19 2019-01-18 2019-01-17 2019-01-16 2019-01-15 2019-01-10 2019-01-09 2019-01-08 2019-01-07 2019-01-06 2019-01-04 2019-01-03 2018-12-27 2018-12-26 2018-12-25 2018-12-21 2018-12-20 2018-12-19 2018-12-18 2018-12-17 2018-12-16 2018-12-13 2018-12-12 2018-12-11 2018-12-10 2018-12-07 2018-12-06 2018-12-05 2018-12-04 2018-12-03 2018-12-02 2018-11-29 2018-11-28