Python入門:はじめの一歩から基本構文までまとめて解説!
Python
Python入門:はじめの一歩から基本構文までまとめて解説!
言語
アンドエンジニア編集部
2021.08.11
この記事でわかること
Pythonはプログラム記述がシンプルでメンテナンス性が高いです
Pythonはデバッグがしやすいため開発効率が高く、多くのライブラリーが公開されています
市場が拡大するAI分野では標準開発言語として認知されており、Pythonは必須知識です

Pythonとは?

Python

Pythonインタープリタ型オブジェクト指向プログラミング言語です。言語仕様がシンプルであるため、メンテナンス性に優れています。同様に、汎用用途での利用に加えてそれぞれの専門分野ライブラリーが公開されているため、多様なアプリケーション開発利用が加速しています。 参考:python

Pythonの特徴は?

Pythonの特徴は、プログラム記述がシンプルなことが挙げられます。記述しやすく、かつ判読しやすいのでメンテナンス性に優れています。さらに、オブジェクト指向プログラミングであるため、高機能なプログラムが簡単に記述できるメリットがあります。

加えて、Pythonはインタープリタのためデバッグが簡単です。コード開発が順次行われており、ライブラリー共有が進んでいます。このことから、分析アルゴリズムが共通化しやすいAIでは、機械学習ディープラーニング(深層学習)のライブラリーが数多く提供されています。以上の理由により、AI分野での開発言語Pythonが標準的に用いられています

Pythonの動作環境は?

PythonWindowsLinux/UNIXMac OS X等のOSで対応しています。対象となる多種多様なシステムにPythonのインストールモジュールをダウンロードし、インストールが可能です。最新バージョンは、3.9.6です。 参考:python download

Pythonの最初の一歩

Python

ここでは、最初の一歩として構文の基本的な考え方を説明します。

一般的な開発言語では構文を ;(セミコロン) {}(波カッコ)を用いて区切るケースが多いです。これは1行で記述しても複数行で記述しても構いませんが、開発者それぞれのコーディングのクセがありますので、別の開発者メンテナンスしにくいことがありました。 C言語の例:

・その1

#include <stdio.h> int main(void) {  printf(“Hello World!”);     return; }

・その2

#include <stdio.h> int main(void) { printf(“Hello World!”);return; }

上記C言語では2つの例とも正しいコーディングルールですが、複数行に記述したりインデントをずらしたりしていますので、開発者ごとに書き方に違いが出てしまいます。

Pythonの例: print(“Hello World!”)

Pythonでは必要最低限のコードで記述でき、コードの区切りを改行としています。そのため誰が作成しても判別しやすいコードです。その他、インデント構文解釈のためにルール化していますので記述しやすく判別しやすくなっています。その他必要に応じて # から始まるコメントを記述しメンテナンス性を高めることができます。

Pythonの基本構文(1)リテラルと変数

リテラルとは、プログラム言語の直値に相当するものを表す表記法です。int(整数)float(小数)complex(複素数)の数値型、あるいはstr(文字列型)等のリテラルがあります。文字列はシングルクォーテーションまたはダブルクォーテーションで括り、解釈に違いはありません。その他、int(整数)のサブクラスとしてbool(理論値)が用意されています。

変数の役割は他の言語と同様です。Pythonでは変数を特定のオブジェクトに対するラベルとして取扱いします。最初の1文字目が _ (アンダースコア)、あるいは英字で表し2文字目以降は数字も利用できます。

その他に、Python固有のリテラルとしてlist(リスト)tuple(タプル)set(集合)の複数の要素を格納する型やdict(辞書)の型が定義されています。これらをさらに詳しく見ていきましょう。

リスト型 リストは複数のデータを保持できるオブジェクトで複数の要素を配列のように扱うことができます。リストは要素を[ ](角カッコ)で括り、中に要素を ,(カンマ)で区切ります。 使用例: drink=[‘coffee’, ‘juice’, ‘beer’] print(drink)

タプル型 タプルはリストと同様に複数の要素から構成されています。リストは生成した要素を変更できますが、タプルは生成してしまうと変更ができません。 タプルは要素を( )(丸カッコ)で括り、中に要素を ,(カンマ)で区切ります。

集合型 集合は数学の集合と同じで集合演算に用います。 集合は要素を{ }(波カッコ)で括り、中に要素を ,(カンマ)で区切ります。

辞書型 辞書型はリストと同じように複数の要素からなります。辞書型はキーと値の組み合わせで構成されています。要素を{ }(波カッコ)で括り、中に要素を キー:値 の組み合わせとして入力し、 ,(カンマ)で区切ります。 使用例: mydata = {“banana”:1, “apple”:2, “orange”:3} print(mydata)

Pythonの基本構文(2)演算子とインデント

ここでは、基本構文で用いられる演算子インデントの扱いについて学んでいきます。

演算子 数値型では "+ - * /" の四則演算、 "%" の割り算の余り、"//" の割り算の商、"**" の累乗が使用可能です。文字列型では [str]+[str] の文字列結合[str] *[int] の文字列繰り返しが実装されています。またキャスト機能が用意されていますので、int(文字列)やfloat(文字列)で文字列から数値に変換できますしstr(変数)で数値から文字列に変換できます。

インデント インデントとは行の先頭の空白文字で字下げを行うことです。すでにお話しした通り、インデントは構文解釈に用いられており、同じ空白数の処理のかたまりを同一ブロックとして解釈されます。これによって、for文if文等複合文の解釈統一的に行うことができます。

Pythonの基本構文(3)複合文

Pythonでは1つの文が1つの処理に対応する文法形式を単純文と言います。また、複数の文で構成され、条件に応じて実行制御を伴う文法形式複合文と言います。複合文の代表的なものは if文while文for文です。

if文(条件分岐) if文を用いて条件に応じた処理を行います。else、elifは必要に応じて制御を追加します。 構文: if 条件 :  実行する文・ブロック elif 条件 :  実行する文・ブロック else :  実行する文・ブロック

使用例: if i%2:  print(str(i)+"は奇数です") else:  print(str(i)+"は偶数です")

while文(繰り返し) while文は式の値がTrueである間、処理を繰り返します。elseは必要に応じて制御を追加します。 構文: while 条件 :  実行する文・ブロック else :  実行する文・ブロック

for文(反復処理) for文配列要素に必要な処理を続けて行います。elseは必要に応じて制御を追加します。 構文: for 対象リスト in 条件リスト :  実行する文・ブロック else :  実行する文・ブロック

range関数を用いると指定回数、または開始数から終了数までの連続した数値を返します。for文等に使うと便利です。 使用例: for i in range(5):    # 開始値0、終了値5未満まで加算(0 1 2 3 4)  print(i) for i in range(5, 10): # 開始値5、終了値10未満まで加算(5 6 7 8 9)  print(i)

Pythonの基本構文(4)関数とクラス、ライブラリー

ここでは、コード記述の効率を上げるために用いる関数クラス並びにライブラリーについて学んでいきます。

関数 関数とは一連の処理をまとめたものです。関数を定義する場合はdef を用います。 使用例: def my\_func(data):  print("入力値は"+str(data))  # dataを表示  print("計算値は"+str(data\*\*2))# dataの2乗を計算、表示 for i in range(3):  my_func(i)

クラス クラスデータやメソッドを定義したもので、オブジェクト指向プログラミングで用いる定義語です。第1引数はselfで自動的にインスタンス自身が渡されます。 使用例: class Example():        # クラスの宣言  def my\_method(self):     # 関数を定義   print('変数は', self.var)   return True  def \_\_init\_\_(self):    # 最初に呼び出される関数を定義   print('\_\_init\_\_')   self.var = 1 test=Example()          # クラス Exampleを呼び出す print('test.var=',test.var) test.var=test.var+1 test.my\_method()        # クラス定義した関数を呼び出す

ライブラリー ライブラリーとは複数の機能をまとめたパッケージを指します。Pythonは便利なライブラリーが多数あります。import文でライブラリーを読み込むことができます。それぞれのライブラリーは各公式サイトあるいは共有サイトであるGitHubからダウンロード可能です。

Pythonの情報サイトは?

Pythonには豊富な情報サイトがあります。理解を深めるためにも以下のサイトをご参照ください。

Python公式サイト  公式ドキュメント(英語)  参考:python document  公式ドキュメント(日本語)  参考:Python 3.9.4 ドキュメントユーザー会  日本Pythonユーザ会  参考:python Japan

Pythonの参考書籍は?

Pythonの情報はウェブサイトや参考書、セミナーまで多岐に渡ります。自身で参考書をベースに学習される場合は以下の2冊がおすすめです。

Pythonチュートリアル 第4版  Python基本的な考え方が理解できる手引書です  出版社:オライリー・ジャパン  参考:Pythonチュートリアル 第4版入門 Python 3 第2版  Pythonの入門書としてもリファレンスマニュアルとしても活用できます  出版社:オライリー・ジャパン  参考:入門 Python 3 第2版

人気の高いPythonを用いて生産性を向上しましょう

efficiency

Pythonは記述が簡単で統一性がありますので、メンテナンス性が高いです。そのため開発生産性が向上し、コード開発期間が短縮できます。また、必要な汎用ライブラリー・専門ライブラリーともに多数ありますので利用者が増加しています。

特にAI領域ではPythonが標準的に用いられており今後市場拡大が期待できるテクノロジー適用領域です。ぜひ積極的にスキルアップを図りましょう。

気になる人のTwitterをフォローしよう!
アンドエンジニア公式LINEでは
新着記事やエンジニアに役立つ情報をお届け!
日々のキャッチアップをお手伝いします!
マイナビITエージェント

編集部オススメコンテンツ

Sponsored
IT・Webエンジニアの「よくある転職活動のお悩み」や「転職活動の流れ」とは?
マイナビITエージェント
Sponsored

アンドエンジニアへの取材依頼、情報提供などはこちらから

お問い合わせ・情報提供
エンジニア求人

編集部おすすめコンテンツ

Sponsored
IT・Webエンジニアの「よくある転職活動のお悩み」や「転職活動の流れ」とは?
マイナビITエージェント
Sponsored

アンドエンジニアへの取材依頼、情報提供などはこちらから

Powered by マイナビ AGENT