Python初心者です。
実際にPythonを実行し、動作確認しながら基本事項を整理していきます。
対話モード
Pythonには対話モードというものがあります。
プログラムを入力するとその場で実行できます。
開始と終了
開始方法:コマンドプロンプトでpythonと入力する
終了方法:Ctrl+z
対話モードを開始していくつかプログラムを実行し、終了してみました。
PS C:\code> python
Python 3.11.1 (tags/v3.11.1:a7a450f, Dec 6 2022, 19:58:39) [MSC v.1934 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello")
Hello
>>> 2*3+4
10
>>> ^Z
PS C:\code>
画面のクリア
対話モード中に画面をクリアできます。
入力(Windowsの場合)
import os
ret = os.system('cls')
実行後
>>>
メリットとデメリット
メリット
プログラムを1行づつ実行できるので、動作確認したいときに便利
デメリット
大きなプログラムだと実行に時間がかかる
対話モード中の実行結果は保存されない
ファイルの実行
該当フォルダ上にあるhello.pyというファイルを実行してみました。
正しく結果が表示されています。
PS C:\code\python\practice> Python hello.py
Hello,Python
基本文法
区切り文字
1行で区切りたいときにセミコロン(;)を使用
入力
a=1;b=2;c=3;
print(a+b+c)
出力
6
改行
1行が長くなりそうなときにバックスラッシュ(\)を使用
入力
a=1+2+3+4+\
5+6+7
print(a)
出力
28
コメントアウト
行頭に「#」もしくは「""" """」
入力
# コメント
print("Hello, Python")
"""
複数行コメント
複数行コメント
"""
出力
Hello, Python
インデント
Pythonにおける「インデント」とは、行の最初に空白を入れて文字開始位置を下げること
「字下げ」ともいう
インデントは影響範囲を示す(if文やfor文)
同じ命令文の範囲内ではインデントの幅をそろえる
入力1
a = 1; b = 1
if a == b:
print('a')
print('b')
else:
print('aとbは異なる')
出力1
a
b
入力2(インデントがずれている場合)
a = 1; b = 1
if a == b:
print('a')
print('b')
else:
print('aとbは異なる')
出力2(エラー発生)
File "C:\code\python\practice\sample_indent2.py", line 6
else:
^^^^
SyntaxError: invalid syntax
文字コード
Pythonの標準文字コードはUTF-8
UTF-8以外を利用する場合はコードの先頭で宣言する
# coding: shift_jis
または# coding = shift_jis
で宣言
入力1
# coding: shift_jis
print("こんにちは")
出力1
こんにちは
入力2(文字コードの宣言なし)
print("こんにちは")
出力2(エラー発生)
SyntaxError: Non-UTF-8 code starting with '\x82' in file C:\code\python\practice\sample_shift_jis2.py on line 1, but no encoding declared; see https://peps.python.org/pep-0263/ for details
文字列
シングルクォーテーションまたはダブルクォーテーションで括る
文字列の連結も可能
入力
print("Hello")
print("Hello" + "World")
出力
HelloWorld
数値演算
足し算、引き算、掛け算、割り算、余り、べき乗
括弧で優先順位変更
数値はクォーテーションマーク不要
入力
print(2 + 3) # 足し算
print(5 - 3) # 引き算
print(2 * 3) # 掛け算
print(8 / 4) # 割り算
print(9 % 2) # 割った余り
print(3 ** 4) # べき乗
# 括弧で優先順位変更
print((20 - 8) / 2)
出力
5
2
6
2.0
1
81
6.0
変数
Pythonでは変数宣言は不要
変数に任意の値を入れると自動で型を認識
入力
name = "Tarou"
print(name) #「Tarou」を出力
print("name") #「name」を出力
出力
Tarou
name
条件分岐文
if, elif, elseを使用
条件文の後はコロン(:)を付ける
入力
a = 10
b = 5
if a < b:
print("aはbより小さい")
elif a > b:
print("aはbより大きい")
else:
print("aとbは同じ値")
出力
aはbより大きい
繰り返し文(for文)
range関数で開始数、終了数、ステップ数を指定
条件文の後はコロン(:)を付ける
入力
for num in range(3):
print(num)
for num in range(0,2):
print(num)
for num in range(0,8,2):
print(num)
出力
0
1
2
0
1
0
2
4
6
繰り返し文(while文)
条件文の後はコロン(:)を付ける
入力
i = 2
while i < 5:
print(i)
i = i + 1
出力
2
3
4
リスト
複数のデータ(変数)を管理
C言語でいう配列と似ている
異なる型の要素のリストも作成可能
入力
a = [1, 2, 3, 4]
b = ["red", "blue", "green"]
c = [5,"yellow"]
print(a[0])
print(b[2])
print(c)
出力
1
green
[5, 'yellow']
タプル
要素を並べたもの
リストとほぼ同じように使用可能
要素の変更ができない
入力
kotoshi = ('令和', 5)
print(kotoshi)
出力
('令和', 5)
辞書
{}内にkeyとvalueの組み合わせが含まれるデータ
要素を直接{}内に書く
入力
dict = {"apple":1, "orange":2, "banana":3}
val = dict["apple"]
print(val)
出力
1
関数
def文を用いて関数を定義
入力
def sample():
print("Hello")
sample()
出力
Hello
Jupyter Notebook
Jupyter Notebookは、ブラウザ上で記述・実行できる統合開発環境です。
開発業務において、チームでのコード共有やデバッグ作業などを効率良く行うことができます。
インストール
インストール方法は2つあります。
①Anaconda(Pythonの実行環境)からインストール
②Jupyter Notebookのみインストールする
今回、Anacondaからインストールしました。
起動方法
Anaconda Prompt上でJupyter Notebookと入力します。
すると、以下のようなページが開きます。
終了方法
Ctrl+c
[I 17:30:49.127 NotebookApp] Interrupted...
[I 17:30:49.129 NotebookApp] Shutting down 0 kernels
[I 17:30:49.130 NotebookApp] Shutting down 0 terminals
ヘルプ
以下のコマンドでオプションのヘルプを表示することもできます。
jupyter notebook --help
デフォルトの作業フォルダ変更
デフォルトの作業フォルダを変更する場合は、Anaconda Prompt (anaconda3)のプロパティを開き、作業フォルダを書き換えます。
書き換えてから再起動すると、変更されていることが確認できます。
(base) C:\code\python\jupyter>
ノートブックの作成
プログラムの実行
プログラムの保存
File → Save as...
※htmlやPDFでの保存も可
プログラムの終了
終わりに
対話モード及びファイル実行、基本文法、Jupyter Notebookについて、動作確認しながら基本事項を簡単に整理してみました。
もっと深い内容についてはまだまだこれからですが、引き続き学んでいきます。
エンジニアファーストの会社 株式会社CRE-COエンジニアリングサービス