!pip install ita -U --userのように「-U」オプション付きでライブラリitaをインストールするコードが書かれていましたが,これを大学の教育用計算機システム上で実行するとおかしくなることがあるようです.現在は,
!pip install ita --userのように「-U」オプションなしのものを配布しています.もう一度Notebookをダウンロードし直して新しいファイルを使ってください.これを実行しようとしても,
AttributeError: '_NamespacePath' object has no attribute 'sort'というエラーが出る時は,ターミナルで
rm -rf ~/.localを一度実行すると回復するようです.
if n % 15 == 0:のほうが簡潔でいいかなと思いました。
if n % 3 == 0 and n % 5 == 0:と書いた方が有利な例を「無理に」見つけるとすると,コンパイルをして実行する処理系では(Python言語で一般的に用いられる処理系はインタプリタなので「無理に」と書いています)
if n % 3 == 0 and n % 5 == 0: print("Fizz Buzz") elif n % 3 == 0: # 3の倍数の場合 print("Fizz") elif n % 5 == 0: # 5の倍数の場合 print("Buzz") else: # いずれでもない場合 print(n)のように書くと,
if n % 3 == 0: if n % 5 == 0: print("Fizz Buzz") else: print("Fizz") elif n % 5 == 0: # 5の倍数の場合 print("Buzz") else: # いずれでもない場合 print(n)と同じとみなして,コンパイル時最適化する余地があるということでしょうか.こちらの方が条件分岐の最大数が減っています.さきほども書いたように,通常のPython処理系ではこのような最適化はおこなってくれないので,意味のない議論ですが.
print(list(range(5)))などを実行すると配列(リスト)に変換して表示させることができます.
def variance1(scores): return average([(x - average(scores)) ** 2 for x in scores])
mkdir ~/algo19のようにします.そして,ターミナルを開くたびに
cd ~/algo19 jupyter notebookと入力してJupyter Notebookを動かしてください.詳しくは,はいぱーワークブック「14.4 コマンドを使ったファイル操作」を参照してください.
cd ~/algo19を済ませてから,
python vote.py 選択肢番号のように使います.
Jupyter Notebookを使いながら(一旦終了せずに),投票システムも使うには,ターミナルのメニューバーの「シェル」->「新規タブ」を選ぶか,[Command]+[T]で別のタブを開いて(あるいは[Command]+[N]で別のウィンドウを開いて),投票システムを使うことをお勧めします.このあたりのことは,「はいぱーワークブック」の15.4 ターミナルの便利な使い方に書いてあるので参考にしてください.
cd ~/algo19と入力してください.これらの機能を使うと,Jupyter Notebookを抜けずにvoteできます.
ターミナルの基本的な使い方は,はいぱーワークブックの15.2 ターミナルの基本的な使い方を,より高度な使い方は,15.4 ターミナルの便利な使い方を参照してください.
cdというコマンドと「~」の意味は,はいぱーワークブックの14.4 コマンドを使ったファイル操作の14.4.1 ディレクトリを読むと分かります.