Sparta Camp @八幡平 DAY1 11/2

八幡平初めての朝。寒い!からスタート。10度切ってましたが、晴天でとても綺麗な風景。


1. GUI とCUI
Graphical User Interface
Character User Interface 文字ベース
2. ターミナル操作
用語説明。情報の流れは、User ->Shell->PC
*shell: 中にKernel(核)がいる。shellはコマンドをKernelに翻訳してくれる。
bash, zshとか、他にも色々種類がある。
エラーコードで -bashって出てくるのはshellのこと。

3. 仮想環境構築
 pythonは基本的に他のライブラリと組み合わせて使う。pythonにも、それぞれのライブラリにもバージョンがそれぞれあり互換性があるため、PCに直接いちいちインストールするのが非常に大変。そのため、仮想環境を構築し、それぞれのプロジェクトで使う。
・コード
-pypenv --python 3:現在のディレクトリに仮想環境を作る。(ピップエンブて読む) でPipfile ができる。
-pipenv install *** : ***(ライブラリ)をインストールする。必ずpythonだけではなく他のライブラリも使う。 

-export PIPENV_VENV_IN_PROJECT=1 でバージョン管理システムをpipenvに指定できる。.venv とは、色んな外部ライブラリのバージョンをいい感じに管理してくれるファイル。
公式:https://pipenv.readthedocs.io/en/latest/advanced/#pipenv.environments.PIPENV_VENV_IN_PROJECT

ちなみに
conda, pipnv どちらも ライブラリのバージョン管理システムのこと。

4.アプリ作り
-関数とは?
 手続きに名前をつける仕組み
-作る前に使う。inputから書き始めないで、とりあえず値は固定しておいていいから大事は計算部分から書く。assertで実行して最終何をやりたいのか確認するところからスタートする。。
assert 間違ってたら実行するとエラーになる。
refactoringをする際、(挙動は変えないままコードを読みやすくする。)assertionはめっちゃ便利。エラーを作ってしまったらすぐわかるので。

-最後の形から書く。予測できるエラーが作れるので、エラー波線から関数作れたりとか。
-赤波線エラーみたら押せ。新たなショートカットなんかの発見があるであろ。

def fizzbuzz_convert(number):
   if number % 15 == 0: #2.ここから書く。
       return 'FizzBuzz'
   if number % 5 == 0: #4.assertion errorから作る。
       return 'Buzz'
   if number % 3 == 0:
       return 'Fizz'
   return str(number)

assert  fizzbuzz_convert(3) == 'Fizz' #1.まずかく。当然assertioon errorになる。エラーの赤波線から関数作れる。
#作る前に使う。assertから書く。
# 最後の形から書く。予測できるエラーが作れるので、エラー波線から関数作れたりとか。
#赤波線みたら押せ。

assert  fizzbuzz_convert(6) == 'Fizz'
assert  fizzbuzz_convert(5) == 'Buzz' #3.次へ。
assert  fizzbuzz_convert(10) == 'Buzz'
assert  fizzbuzz_convert(15) == 'FizzBuzz'


assert  fizzbuzz_convert(1) == '1'
assert  fizzbuzz_convert(7) == '7'

#assert を入れておくと何か変にいじってしまった時エラーが教えてくれる。次にいじる人にも親切。


***Pycharm shortcut***

-Spotlight control+ space
-command N P Y ->python ファイル作成
-ctl + T 変数の名前付け直す時に
-command + delete ->その行ごと削除
-command + shift + a python内で検索できる
-reformat: シュッと綺麗になる。

-ctl + T : refactor->variable で変数に簡単にできる。
lnline 無駄っぽい変数をなくす
    method 選択部分をまるっと関数にできる。

-command + d : 行複製
-command + shift + Return ->  : + 改行

-option + enter ->辞書に追加し、出現エラーを減らせる。


***Terminal***
-赤波線でたら option + enter
-open . :現在の作業場所を開く
-ctl + l or clear :terminal を綺麗に

1日を通して。。
わからないエラーメッセージは英語を読んで、意味を理解する。bashとか抜かさないで。
わからなくて当然なのでググる。
エラーの理解が大事。


とりあえず1日目。丁寧な説明でとても楽しめました。

この記事が気に入ったらサポートをしてみませんか?