はじめに
事前に確認&やっておくといいこと
- 仮想マシンにSSHで接続すると日本語が文字化けしてしまいました。
- 調べたら以下の記事が困っていたことにドンピシャでした!
仮想マシン
# 状態確認 → VC Keymapがusになっている
$ localectl status
System Locale: LANG=ja_JP.utf8
VC Keymap: us
X11 Layout: n/a
# VC Keymapをjp106に更新(sudoつけて実行)
$ sudo localectl set-keymap jp106
# 再度状態確認 → VC Keymapがjp106に更新
$ localectl status
System Locale: LANG=ja_JP.utf8
VC Keymap: jp106
X11 Layout: jp
X11 Model: jp106
X11 Options: terminate:ctrl_alt_bksp
# 日本語のlocaleが使用可能か確認 → そもそもjaがない!?
$ localectl list-locales | grep -i ja
# 日本語のlocaleを追加
$ sudo localedef -f UTF-8 -i ja_JP ja_JP
# 日本語のlocaleが使用可能になっていることを確認
$ localectl list-locales | grep -i ja
ja_JP
ja_JP.utf8
基本構文を学ぶ
正常系プログラムを実行
基本構文を学ぶために以下のプログラムを作成&実行してみます。
コマンド実行
# .pyファイルを作成
$ vi test02.py
test02.py
print('モジュールのロード')
def test():
print('関数:testを呼び出しました')
if __name__ == '__main__':
print('python-izm')
# print('パイソンイズム')
test()
コマンド実行
# Pythonコマンドを使用して作成した.pyファイルを実行
$ python test02.py
モジュールのロード
python-izm
関数:testを呼び出しました
3系の文字エンコードはデフォルトでUTF-8が適用されるので意識しなくてよいとのこと。
※2系の場合は1行目に明示的に宣言する必要があるらしいです。
異常系プログラム(インデント)を実行
Pythonはブロック構造にインデントを使用しています。
{ } を使用しないため、インデントの整合性が取れていないとエラーになります。
コマンド実行
# .pyファイルを作成
$ vi test03.py
test03.py
print('モジュールのロード')
def test():
print('関数:testを呼び出しました')
# 対象プログラムをスクリプトとして起動したときのみ実行
# importなどの際は実行されない
if __name__ == '__main__':
print('python-izm')
# print('パイソンイズム')
test()
コマンド実行
# Pythonコマンドを使用して作成した.pyファイルを実行
$ python test03.py
File "test03.py", line 10
test()
^
IndentationError: unindent does not match any outer indentation level
IndentationError: unindent does not match any outer indentation level
IndentationError:unindentはどの外側のインデントレベルとも一致しません
google先生曰くエラーメッセージは上記とのことです。
おわりに
インデントのブロック構造のみ気をつける必要がありますが、
以前GO言語を触れたことがあるのであまり違和感なかったですw
今後の流れとしては基礎編、応用編を実施後、何かものを作れたら記事にしようと思います!
(文字列とかif文とかは記事にするよりはプログラム作ったほうが覚えやすいので)