Python入門
変数とデータ型

Pythonの初心者向け入門解説、人気のプログラミング言語Python
公開日:2020-09-08 最終更新日:2021-02-02

第3回.変数とデータ型


プログラミングにおいて、変数はとても重要であり、かつ理解が難しいものです。


プログラミングを始めて、最初の関門が変数といっても良いかもしれません。
変数が使えなければプログラムは書けません、
Pythonの変数がどうなっているか、ここでは簡単にさわりだけ説明します。

目次

変数とは

プログラムにおいて、
扱うデータを入れて必要なときに利用するために用意した入れ物です。
その入れ物に付けた名前が変数名になります。
値に名前を付けて、その名前で値を使えるようにしたものです。

変数があれば定数もありそうですが、Pythonに定数はありません。
値を書き換えられない定数は定義できません。
Pythonには、変更不可のイミュータブル(immutable)、変更可のミュータブル(mutable)というものがあります。
これは、ここでいう変数・定数とは全く違うものです。
この件については、ずーと先、もっともっとPythonについての理解が進んでからの説明になります。

動的型付けと静的型付け

静的型付けは、変数等の型がプログラムの実行よりも前にあらかじめ決められている型システム。
動的型付けは、変数等の型をプログラムの実行時の実際の値により判別する型システム

Pythonは動的型け言語です。
動的型付けでは、変数の型を指定しません。


Pythonで変数を使うには

Pythonでは変数を宣言する必要はありません。
変数として使いたい値に名前を付けます。

変数 = 値

これで値に名前が付きます。
=の前後の半角スペースはあっても無くても構いません。

対話モードでやってみましょう。

Python 変数 type関数

対話モードでは、わざわざprintしなくても、変数名を入力するだけで値が表示されます。
もちろん、print(v)としても表示されます。
変数なので値を入れ替えることができます。

Python 変数 type関数

Pythonでは、文字列を囲うのは、"(ダブルクォート)でも'(シングルクォート)でもどちらでも構いません。
どちらでも構いませんが、使う時はどちらかに統一しましょう。
このシリーズでは"(ダブルクォート)で統一します。

改行を含む文字列を定義する場合は、三重クオート(シングル、ダブルどちらでも)で囲みます。

Python 変数 type関数


変数定義についての追加説明
上記では、変数 = 値として、値を代入することで変数定義するとしました。
しかし、必ずしも最初に値を代入する式を書かなければならないものではありません。
関数や制御文による代入として変数が使われるとき、その場で書くことができます。
結果として最初に何らかの値が代入されれば良いという事です。
このような使い方については、今後度々出て来ることになるので、その場で説明します。

変数名の規則

・半角、全角の数字と文字が使えます
・記号は_(アンダースコア)のみ使用可能
・1文字目に数字は使えません
・Pythonの予約語は使えません

ただし、PEP8に記載されている以下の内容は尊重しましょう。
関数名は小文字にする必要があります。読みやすくするために、必要に応じて単語をアンダースコアで区切ります。
単一の文字 'l' (小文字のエル)、'O' (大文字のオー)、'I'(大文字のアイ) を決して変数に使わないでください。
関数の名前は小文字のみにすべきです。また、読みやすくするために、必要に応じて単語をアンダースコアで区切るべきです。

変数の名前についても、関数と同じ規約に従います。

Pythonでは大文字小文字が区別されます。
変数だけではなく、制御文・関数名・オブジェクト等々、全てにおいて大文字小文字が区別されるので、大文字小文字を正しく記述する必要があります。、

したがって、
変数Aと変数aは別の変数になります。

Python 変数 type関数


_(アンダースコア)の使い方

_(アンダースコア)の使い方は、PEP8にも多く記載があります。
推奨されている使い方というものもあります。
また、_(アンダースコア)1文字での変数名の使い方もあります。
_(アンダースコア)の使い方については、その都度書いていく予定です。

Pythonにおいては_(アンダースコア)が特別な意味を持つ場合があります。。
Python 変数 type関数

数値を読みやすく_で区切る事が出来ます。
また、対話モードでは最後の出力を参照することができます。


変数のデータ型

int 整数(Python3では桁数制限はありません、メモリの許容範囲まで)
float 実数(小数)、倍精度浮動小数点数(64bit)
str 文字列
bool 真偽値
list リスト
tuple タプル
dict 辞書
range シーケンス

以上は(良く使われる)代表的なデータ型です。
Pythonには、このほかにも多数のデータ型があります。

Pythonではデータ型は全てオブジェクトです。
intもfloatもstrもオブジェクトになります。

list、tuple、dict、rangeこれらについては、今後実際に使う時に詳しく説明します。
上記以外のデータ型についても、実際に使用する場面が出てきた時点で説明していきます。

※日付型は特殊な型となるため、後々での説明となります。


データ型の確認方法

データ型を調べるには、組み込み関数のtype関数を使います。
type()関数はオブジェクトの型を返します。

type(引数)

Python 変数 type関数

Pythonの組み込み関数については、使用する場面で都度説明していきます。
組み込み関数の一覧は以下を参照してください。
第12回.組み込み関数一覧
Pythonには数多くの関数と型が組み込まれており、様々な処理を行うことができます。組み込み関数は、Python入門の中でもすでにいくつか使用していますし、これからも頻繁に使用していきます。全部で69個あります。



同じテーマ「Python入門」の記事

第1回.Pythonの統合開発環境をインストール

・PythonのIDE(統合開発環境)について ・Visual Studio Community(2019)のインストール ・Visual StudioでPythonのコードを書いて動かしてみましょう ・Pythonのバージョンについて ・Python3.8のインストール ・IDLE(Python付属の統合開発環境)を使ってみましょう ・コマンドブロンプトで実行してみましょう ・Power Shellで実行してみましょう
第2回.対話モードの使い方とヘルプ
・IDLEでの対話モードの使い方 ・Visual Studioでの対話モードの使い方 ・ヘルプの使い方
第3回.変数とデータ型
第4回.数値計算(四則演算)
・算術演算子 ・int型とfloat型 ・float型における小数点の問題 ・complex型:Visual Studioのインテリセンスについて
第5回.if文とインデントによるブロック
・インデントによるプロック ・行の継続 ・コメント ・if文の構文 ・比較演算子 ・論理演算子 ・真の判定、偽の判定 ・pass文
第6回.for文とイテラブルオブジェクト
・for文の構文 ・イテラブルオブジェクトとは ・range()関数 ・str型 ・list型/tuple型 ・enumerate()関数 ・break文とelse節 ・continue文
第7回.while文とデバッグ(ステップイン)
・while文の構文 ・whileの例文 ・IDLEのデバッグ ・Visual Studioのデバッグ
第8回.文字列操作(str型)
・文字列リテラル ・文字列演算子 ・文字列のインデックスとスライス ・format()関数 ・format()メソッド ・f-string(フォーマット済み文字列リテラル) ・strのメソッド
第9回.リスト(list型、配列)
・リスト(list型)とは ・リスト演算子 ・リストのインデックスとスライス ・スライスでリストの値を変更 ・スライスでリストの要素を追加 ・del文でリストの要素を削除 ・リストのアンパック ・for文とリスト ・while文とリスト ・リストに要素を追加するメソッド:append , insert , extend ・リストの要素を削除するメソッド:remove , pop , clear ・リストの値を調べるメソッド:index , count ・リストを並べ替えるメソッド:sort , reverse , sorted関数 ・リストをコピーするメソッド:copy
第10回.タプル(tuple型、イミュータブル)
・タプル(tuple型)とは ・ミュータブルとイミュータブル ・タプル演算子 ・list()関数とtuple()関数 ・タプルのインデックスとスライス ・タプルのアンパック ・for文とタプル ・while文とタプル ・tupleのメソッド ・タプルの並べ替え(sorted関数)
第11回.辞書(dict型)
・辞書(dict型)とは ・辞書のいろいろな作成方法 ・辞書にキーが存在するかの確認 ・辞書からキー指定で値を取得 ・辞書への追加/変更 ・辞書から削除 ・辞書ビューオブジェクトとfor文 ・辞書(dict型)のコピー


新着記事NEW ・・・新着記事一覧を見る

TRIMRANGE関数(セル範囲をトリム:端の空白セルを除外)|エクセル入門(2024-08-30)
正規表現関数(REGEXTEST,REGEXREPLACE,REGEXEXTRACT)|エクセル入門(2024-07-02)
エクセルが起動しない、Excelが立ち上がらない|エクセル雑感(2024-04-11)
ブール型(Boolean)のis変数・フラグについて|VBA技術解説(2024-04-05)
テキストの内容によって図形を削除する|VBA技術解説(2024-04-02)
ExcelマクロVBA入門目次|エクセルの神髄(2024-03-20)
VBA10大躓きポイント(初心者が躓きやすいポイント)|VBA技術解説(2024-03-05)
テンキーのスクリーンキーボード作成|ユーザーフォーム入門(2024-02-26)
無効な前方参照か、コンパイルされていない種類への参照です。|エクセル雑感(2024-02-17)
初級脱出10問パック|VBA練習問題(2024-01-24)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.RangeとCellsの使い方|VBA入門
6.ブックを閉じる・保存(Close,Save,SaveAs)|VBA入門
7.セルのクリア(Clear,ClearContents)|VBA入門
8.メッセージボックス(MsgBox関数)|VBA入門
9.条件分岐(Select Case)|VBA入門
10.マクロとは?VBAとは?VBAでできること|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。


このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ