2018年7月31日火曜日

サンプルコードを一括改訂:: 退屈なことはPythonにやらせよう

退屈なことはPythonにやらせよう::準備レビュー

せっかくのサンプルの改行コードがDOSだったり、シェバンが何だったりします。そこをまず治します。

退屈なことはPythonにやらせよう ――ノンプログラマーにもできる自動化処理プログラミング」のレビューの前に

これではちょっとLinux環境(やたぶんMAC OS Xでも?!)並びにWSLではいささか扱いにくいので、

  • 改行コードを変更します。DOS改行をUnix改行に。
  • シェバンをLinux環境に合わせて書き直します。

するといいかもしれません。失敗してもまた展開すればいいです。
Windows向けの本だったのかぁ。そういえばドライブレターの記述が……。

以下、一括の呪文。配下のpyをぜんぶ書き換えて、オリジナルは残します。PerlのOneLinerってこういうがさらっとできるので大好きです。配下には書き換えたいファイルが47個ありますね。

新規端末 CTRL+ALT+T

#zip展開したディレクトリで、次のperl行を発行します。

~/Programming/py/Python_practice_projects <<ここに展開したとします。

$ perl -i.4Windows -lpe 's/\r// ; s|^#\! python3$|#! /usr/bin/env python3| if 1 ' **/*.py  Enter

一瞬で終わらなければ、切り貼りミスかも。

--
そのまま続けて::
実行属性を付与
$ chmod +x **/*.py Enter


$ grep -r '#! /usr/bin/env python3'  Enter
書き換わっていることが確認できます。

$ ./ch03/collatz.py  Enter

整数を入力してください:


何がおきるか。シェバンは1行目、改行はDOSという前提です。それを一括で書き換えます。


  • シェバンが、#! /usr/bin/env python3 に変更される。Linuxフレンドリー
  • 改行コードは、LFに変更されているはず。Linuxフレンドリー
  • オリジナルファイルは、.4Windows という拡張子付きで残る。安心です。




レビュー::
いまのところベッドでの寝酒代わりなので、そのうちちゃんと。