Python勉強1日目 文字列の出力・変数・型・結合

これは、僕が最高のエンジニアになるまでの物語だ

①文字の出力

出力とは、画面に表示すること。
文字を出力する命令文(コード)は以下の通り。

print(“ここに出力したい文字列を入力”)

文字列を「“”」で囲むことをお忘れなく。
ただし、数字(int型)や変数を出力したい時は「“”」で囲む必要はない。
というより意図しない動き(バグ/不具合)の原因となるので囲ってはいけない。
(型(int型)や変数については後で解説します。)

例えば

数字を(int型で)出力したい場合は

print(5)

こう。

変数を出力したい場合は

age = 20
print(age) #出力結果 :20

こう。

もし数字や変数を出力しようとして「””」で囲んでしまうと、数字(int型)や変数ではなく(囲んだ)文字列が出力されてしまう。(数字の場合はstr型になる)

例えば変数名を「“”」で囲んでしまうと

age = 20
print(“age”) #出力結果 :age

「20」ではなく「age」が出力されてしまう。

②変数とは

データを入れておく「箱」のようなもの。
直接、文字列や数字(データ)を出力(あるいは利用)せず、変数を介すことで様々なことができる。

使い方は

変数名 = “データ”

という形で使う。
変数に入れたいデータが文字列の場合は「“”」が必要だが、そうでない場合は囲まないようにしよう。

変数に入れたデータを出力したい場合は

print(変数名)

このようにコードを書く。
先ほども書いたが変数名を「“”」で囲まないようにしよう。
くどいようだが、バグ/不具合の原因になる。

変数名は基本的に好きにつけることができるが、「python 変数 命名規則」などで検索して分かりやすい変数名の付け方をすることをおすすめする。

さて、具体的な変数の使い方。
例えばこのように使う↓

age = 20

この場合、「age」という名前の変数(箱)に「20」というデータが入る(入れることができる。)
データを入れることを「代入」と言う。

この状態でprint(age)をすると

age = 20
print(age) #出力結果 :20

出力結果は20となる。

変数のデータは後から書き換え可能。
書き換えるには、同じ名前の変数を下に書き = の横(右)のデータを書き換えたいものにする。

例えば

age = 20
age = 30

こんな感じ。
この場合、変数「age」に最初は20が入るがすぐ30に書き換えられる。

よって変数をプリント【print(age)】すると出力結果は30となる。↓

age = 20
age = 30
print(age) #出力結果 :30

ただし、命令は基本的に上から下に順番に処理される。
よって

age = 20
print(age) #出力結果 :20
age = 30
print(age) #出力結果 :30

というコードを書くと、最初のprint(age)の段階では、変数ageに入っているデータは20なので20が出力される。
次に変数ageのデータが20から30に書き換えられるため、次のprint(age)の出力結果は30となる。

③数字について(型とは)

我々人間は「1」や「2」と言った数字そのものを見ることは出来ない。
「1つのりんご」と言ったように物を数えるときや概念として数字を使うことはあるが、決して見ることは出来ない。
紙に「1」と書いて見てもそれは文字(のひとつ)としての「1」を見ているに過ぎない。
しかし、パソコンは「数字としての1」と「文字としての1」を区別することができる。我々が氷と水を区別できるようにだ。

そして、プログラミングにおいては「文字としての1」と「数字としての1」を明確に区別する必要がある。

そこで重要になるのが「型」というもの。

pythonでは「漢字ひらがなカタカナ、alphabet(アルファベット)」を「str型」といい、数字を「int型」、小数点を「float型」という(他にも色々な型があるがとりあえずはこれだけ覚えておけばいい)

型は
type(“ここに型を調べたい文字列や変数を入力”)
という命令文を使って調べることができる。
(例によって、「””」は文字列以外の場合は不要。ただ、「””」を入力してる時点でstr型確定である)

具体的には

print(type(“あいうえお”)) #出力結果 :<class ‘str’>

print(type(“11”) #出力結果 :<class ‘str’>

print(type(11)) #出力結果 :<class ‘int’>

といった感じだ。print()の()の中に、type()を入れることになるので、「()」の数・位置に注意しよう。

数字を「””」で囲んで出力した場合や変数に代入した場合、数字は「文字(列)としての数字」つまりstr型となり、数字を「“”」で囲まずに出力した場合や変数に代入した場合は「数字としての数字」つまりint型となる。

だから何だ、プログラミングにどう影響があるんだと思われた方もいるだろう。
実際、かなり影響する。どう影響するかの一例を次に紹介する。

文字列・変数は「+」や「f”{変数名}”」で結合や計算することができる

文字列と文字列は「+」で結合することができる。

例えば

print(“こんにちは” + “当記事をお読みくださりありがとうございます“)

というコードを書くと出力結果は「こんにちは当記事をお読みくださりありがとうございます」となる。

また、文字列と変数を「”文字列“+ 変数 + “文字列”」や「f”文字{変数名}列”」といった書き方で結合することができる。

例えばこのような使い方。

age = “20”
print(“あなたは” + age + “歳です“) #出力結果 :あなたは20歳です

変数ageに”20”(str型の20)が代入されている状態で「あなたは」「歳です」の間に変数age(つまり「“20”」)が出力されるため、出力結果は「あなたは20歳です」となる。

文字列に「“”」を忘れないこと、変数を2つの「+」で囲むことを忘れないように要注意。

「f”文字{変数}列”」の方を使うとこのようになる。

age = “20”
print(f”あなたは{age}歳です”)

こちらの方を覚えた方がいい。
fの後に文字列、文字列を「””」で囲むことを忘れない

さて、先ほど数字を扱うときは型(str型/int型)がかなりプログラミングに影響すると言ったが、その一例をお見せしよう。

age = 20
print(f”あなたは{age}歳です“)

このコード、出力結果はどうなるかお分かりだろうか。

答えは「あなたは20歳です」…ではない。答えはエラーが出る、だ。

なぜか。それは実はパソコンは型の違う文字(数字)を結合出来ないからだ。

先ほどのコードは”20“つまりstr型の数字(文字)を変数ageに代入していたため、同じくstr型である「”あなたは“」「”歳です“」の文字と結合できた。

しかし、今回変数ageに代入している数字はint型。そのため、結合できずエラーとなる。

これこそが、数字を扱うときにstr型とint型を意識しなければならない理由だ。
さらに例をもう一つ。

pythonでは「+」記号を使って、足し算をすることが出来る。
こんな感じだ。

print(3 + 4) #出力結果 :7

では、次のコードの出力結果はどのようになるだろうか。

print(“3” + “4”)

答えは「7」ではない。「34」だ
数字を「””」で囲んだことにより、2つの数字はint型ではなく、str型に(文字列に)なった。

つまり、文字列の結合。
見た目が数字なので少し分かりづらいかも知れないが、要はこの章の最初に書いた「print(“こんにちは” + “当記事をお読みくださりありがとうございます“」と全く同じ処理が行われるのだ。

この記事が気に入ったらサポートをしてみませんか?