SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Pythonで学ぶバックエンド開発

【Pythonの基本】Webページのサーバサイドで使うPython文法について解説

Pythonで学ぶバックエンド開発 第2回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 本連載では、ベジェ曲線でお絵描きするWebアプリを使って、描いた絵を公開できる掲示板を開発しながら、Pythonを使ったバックエンド開発について学んでいきます。今回はデータベースとやり取りしたりWebページを動的に出力したりするサーバサイドで使うプログラミング言語「Python」の文法について解説します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

はじめに

 Pythonは比較的簡単なプログラミング言語なので、何らかのプログラミング言語を使えたら、それほど苦労なく理解できると思います。

 WebアプリではPythonのコードはWebブラウザには現れません。Pythonの「print」関数で出力した文字列がWebページになってWebブラウザで表示されます。

 次の図のようにPythonではHTML5+CSS+JavaScriptを書き出せますが、主にHTML5を出力し、CSSとJavaScriptファイルは別に用意することになるでしょう。拡張子は.htmlファイルではなく.pyファイルですが、書き出す中身はHTML5文書です。

WebアプリにおけるPythonの役割
WebアプリにおけるPythonの役割

Pythonの初歩的な文法

 Pythonだけでなくプログラミング言語なら大抵、「変数」や「型」や「代入演算子」や「算術演算子」や「比較演算子」や「リスト(一般のプログラミング言語では「配列」)」や「タプル」や「辞書型」や「関数」などの文法があります。

変数について

 変数とは値を入れておく入れ物のようなアルファベットの名前です。名前の中に数字や「_」記号を入れることもできますが、名前の先頭に数字を書くことはできません。

 値の型には「整数」「小数」「真偽値」「文字列」「None」「日付」「リスト」「タプル」「辞書型」や、「クラス」などを入れることができます。

 また、変数には代入演算子「=」で値を入れたり取得することができます。算数や数学では「=」は「等号」ですが、プログラミングにおいては代入になります。

変数と代入演算子の書式

 変数 = 値

 変数1 = 変数2

算術演算子とは

 算術演算子は、加減乗除の計算をするだけの演算子です。加算「+」、減算「-」、乗算「*」、除算「/」です。加減乗除に加えて除算した余りの「剰余」を「%」で計算もします。次のサンプルコード「arithmetic.py」を頭の中で計算してみたら、ターミナルにprint関数で表示された答えと合っていましたか?

算術演算子のサンプルコード「arithmetic.py」
i = 1
i = i + 9
i = i - 5
i = i * 4
i = i / 4
i = i % 3
i += 6
i -= 2
i *= 7
i /= 2
i %= 8
print(i)

比較演算子とは

 比較演算子は、2つの値や変数を比較して、成り立てばTrueを、成り立たなければFalseを返す演算子です。AよりBが大きいか小さいか、BがA以上か以下か、AとBが等しいか等しくないかを比較します。比較演算子は主に「if文」で使われることが多く、比較演算子の結果がif文の条件になることが多いです(if文については次のページで説明します)。

比較演算子の書式(AとBは値や変数や関数など)

 A < B

 A > B

 A <= B

 A >= B

 A == B

 A != B

リストとタプル

 変数を複数同時に保持する方法があります。それがリストです。例えばこの連載で開発する掲示板の記事1つ1つをそれぞれ1つ1つ変数を使って保持していたら面倒ですよね?そこでリストを使って一度に全ての記事を保持するようなことができます。

 次のサンプルコード「list.py」を見てください。「[」「]」で囲んで「,」区切りの複数の値で初期化して、「l」という変数を同時に持てます。変数の値を取得するなら「リスト名[インデックス番号]」と書きます。代入するには「リスト名[インデックス番号] = 値」です。インデックス番号は0が最初になることに注意してください。

サンプルコード「list.py」
l = [4,0,1,2,3]
print(l[0])
l[2] = 10
print(l[2])

 続いてタプルもリストとほとんど同じです。ただし初期化の時以外、値を代入できません。代入しようとするとエラーが起きます。値を変更できない点は、Pythonにはありませんが「const」に近いですね。

 次のサンプルコード「tuple.py」を見てください。「(」「)」で囲んで「,」区切りの複数の値を「t」という変数に同時に持てます。変数を取得するなら「タプル名[インデックス番号]」と書きます。

サンプルコード「tuple.py」
t = (5,4,3,2,1,0)
print(t[1])
t[4] = 0 # エラーになる!

関数

 関数はプログラムコードを1つにまとめて、関数を呼び出せばその中のコードだけを実行することができます。関数の中のコードは他と区別して「インデント(字下げ)」します。関数には「引数」という値を渡すことで異なる結果を得ることもできます。結果は「return」で「戻り値」を使って得ることができます。

 次のサンプルコード「func.py」を見てください。「def」で「minus」関数を宣言し、「answer = minus(10,3)」で2つの引数を関数に渡し、a-bの減算の結果をreturnで返し、「answer」変数に代入します。プログラムコードは上から下に実行されていきますが、def文の関数は呼ばれるまで何も実行されません。ちなみに「print」関数も「str」関数も「組み込み関数」という最初から用意された関数です。

サンプルコード「func.py」
def minus(a,b):
  return a-b

answer = minus(10,3)
print("10-3="+str(answer))

次のページ
モジュール

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Pythonで学ぶバックエンド開発連載記事一覧
この記事の著者

大西 武(オオニシ タケシ)

 1975年香川県生まれ。大阪大学経済学部経営学科中退。プログラミング入門書などを30冊以上商業出版する作家。ドコモでグランプリなどコンテストに20回以上入賞するアーティスト。オリジナルの間違い探し「3Dクイズ」がTVで約10回出題。プロフィールサイト:https://profile.vixar.jp

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/21525 2025/06/09 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング