FrontPage / Learning Programming / 2015 / 2nd Semester

  • The added line is THIS COLOR.
  • The deleted line is THIS COLOR.
[[Learning Programming]]

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

* 2015年 後期 [#b724c952]
:日時|月曜日 13:00-14:30
:参加者|横井,上村,ダワ,ゼン,Diana
:TA|山口,佐々木,五十嵐

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

** Python [#v265b074]
- References
-- [[Python 2.7.10 documentation>https://docs.python.org/2/index.html]]
--- ''困ったことがあったらまず公式ドキュメントを確認''
- 導入
-- [[Python入門 (全24回) - プログラミングならドットインストール>http://dotinstall.com/lessons/basic_python_v2]]
--- 他の言語を触ったことがある人が Python の記法をざっと確認するのに良い.全部で 1.5 時間程度.
-- [[The Python Tutorial — Python 2.7.10 documentation>https://docs.python.org/2/tutorial/index.html]]
-- [[Python チュートリアル — Python 2.7ja1 documentation>http://docs.python.jp/2/tutorial/]]
--- 何はともかくチュートリアルを全部読む.
-- 『みんなの Python』
--- 文体が合うなら.
-- [[python - 機械学習の「朱鷺の杜Wiki」>http://ibisforest.org/index.php?python]]
** プログラミング全般,各種パラダイム [#l35d2859]
- 『プログラマの考え方がおもしろいほど身につく本』
- 『コーディングを支える技術』([[目次>http://nhiro.org/langbook/toc.html]])
- 『リーダブルコード』
** Linux,各種ツール [#f11a464b]
- 『新しい Linux の教科書』
- 『zsh の本』
- 全般
-- 『新しい Linux の教科書』
- シェル
-- 『zsh の本』
- バージョン管理
-- 『GitHub 実践入門』

* 予定・記録 [#u994207c]
** #01. 2015/10/19(Mon) 14:40-17:00 [#s07f67f0]
*** Tutorial (佐々木) [#rf44cdaf]
- 環境構築(environmental construction) [[slide(ja)>http://www.cl.ecei.tohoku.ac.jp/local/handouts/2015/misc/misc-20151019-aki-s.pdf]], [[slide(en)>http://www.cl.ecei.tohoku.ac.jp/local/handouts/2015/misc/misc-20151019-aki-s_eng.pdf]]
-- 研究室の計算機環境,サーバへのログイン,Python の実行,virtualenv,Jupyter
-- (付録) tmux, linux コマンド
- コードのアップロード方法(how to upload your source codes) [[slide(ja)>http://www.cl.ecei.tohoku.ac.jp/local/handouts/2015/misc/misc-20151019-aki-s_sub.pdf]], [[slide(en)>http://www.cl.ecei.tohoku.ac.jp/local/handouts/2015/misc/misc-20151019-aki-s_sub_eng.pdf]]
*** 解いた問題 [#n0e7addf]
- 000, 001
*** Tips [#w77dbf0e]
- インデントは4スペース (ソフトタブ)
-- エディタで Tab キーを押したときに '\t' ではなく半角スペース×4によるインデントが挿入されるように各自設定
- 変数名関数名を,キーワードや組み込みの関数名とぶつけない
-- [[Keywords in Python>http://zetcode.com/lang/python/keywords/]]
-- [[Built-in Functions — Python 2.7.10 documentation>https://docs.python.org/2/library/functions.html]]
- 組み込みのメソッドや関数の仕様の確認方法
-- [[Python 2.7.10 documentation>https://docs.python.org/2/index.html]]
--- ''困ったことがあったらまず公式ドキュメントを確認''
-- [[Dash for OS X>https://kapeli.com/dash]] (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 を添え字付きで走査するときに便利
-- [[2. Built-in Functions — Python 2.7.10 documentation#enumerate>https://docs.python.org/2/library/functions.html#enumerate]]
-- `enumerate(l, start=1)` とすると添え字が1はじまりになる.


© 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