Python初心者が独学でのスキル習得に挑戦しています!
この記事では、変数とデータ型、それから式について学んだことを皆さんと共有させていただきます。
初心者として、学習を通じて感じたことや学び方のコツも交えて記事にしていますので、ぜひご一読いただき一緒にPythonを学習しましょう!
- 使用する教材:参考書「スッキリわかるPython入門」⇒メインの教科書として活用しています!
- ChatGPT:参考書を読んでも理解できないことを教えてもらったり、作成したコードにエラーが出たときにチェックをしてもらいます!さらに、練習問題と解答例を作成してもらっています!
- 学習のペース⇒1日2時間程度の学習ペースで、2日1セットで1単元の習得を目指します。
- 30日後の目標⇒特定(複数)のニュースサイトから最新の記事タイトルと概要をスクレイピングし、収集したデータを分析して、頻出キーワードやトピックの傾向を把握する。
学んだこと
式と演算
まずPythonにおける式とは何かを学びました。
式
式とは、Pythonで計算を行ったり、値を生成したりするための組み合わせです。
例えば、数字や文字列を使って計算するものが式にあたります。
3 + 5 #数字の式
'hello'+'world' #文字列の式
後で出てきますけど、文字列は「’’」で囲む!
算術演算子、比較演算子
演算子という言葉を使うとわかりにくいですが、要するに数学でいう「+(プラス)」や「-(マイナス)」のことだと理解しました。
演算子記号 | 演算子名 | 例 |
---|---|---|
+ | 加算 | 3 + 5 -> 8 |
– | 減算 | 10 – 7 -> 3 |
* | 乗算 | 4 * 6 -> 24 |
/ | 除算 | 15 / 3 -> 5.0 |
// | 整数除算(余りを除く) | 15 // 4 -> 3 |
% | 剰余(余りを残す) | 10 % 3 -> 1 |
** | 累乗 | 2 ** 3 -> 8 |
== | 等しい | 5 == 5 -> True |
!= | 等しくない | 5 != 3 -> True |
> | 大きい | 7 > 3 -> True |
< | 小さい | 2 < 4 -> True |
>= | 以上 | 5 >= 5 -> True |
<= | 以下 | 3 <= 5 -> True |
演算の優先順位
Pythonでは、数学と同様に演算には優先順位があります。
例えば、「*」や「/」は「+」や「-」よりも優先されます。
2 + 3 * 4 # 結果は14(3 * 4を先に計算してから、2を足します)
括弧を使うことで、優先順位を変更することもできます。
(2 + 3) * 4 # 結果は20(2 + 3を先に計算してから、4を掛けます)
- 式は値(数値や文字列)を計算するための組み合わせ
- 演算子を使って、加算、減算、比較などの操作を行う
- 演算の優先順位を理解すると、複雑な計算も正しく行うことができる
変数とは何か?
次に変数について学びました。変数は、データを格納するための「名前付きボックス」のようなもので、これを使うことでプログラム内でデータを保存し、再利用することができます。
たとえば、「x = 5」と書くと、「x」という名前の箱に「5」という数字が入るイメージです。
変数を使って、変数にデータを入れることもできます。
x = 5
y = x + 3 # yは8になる
変数の基本的な使い方
Pythonでは、変数をとするための特別なキーワード(指示)は必要ありません。単に「変数名 = 値(数字や文字列)」という形で変数に値を割り当てるだけでOKです。
また、Pythonでは変数の型を自動的に認識してくれます。これは非常に便利で、初心者が気軽にプログラミングを始められる大きな理由の一つだそうです(他のプログラミング言語はわかりませんが)。
例えば、以下のコードを例にすると、、、
x = 10 # xは整数として扱われる
y = 3.14 # yは浮動小数点数として扱われる
z = "Hello, Python" # Zは文字列として扱われる
このコードでは、「x」は整数、「y」は浮動小数点数、「z」は文字列として扱われます。Pythonは、値を見て自動的に変数の型を決定してくれます。
他のプログラミング言語では型宣言が必要とのことなので、その煩わしさはPythonにはないようです。
変数名のルール
変数を使うときにはルールがあります。これらを守ることで、コードがより読みやすくなり、他の人が理解しやすくなります。
- 変数名には、アルファベット、数字、アンダースコア(_)のみを使用できる。
- 数字で始めることはできない。
- 先頭にアンダースコアを2つつけた名前は原則として使用しない。
- 大文字/小文字、全角/半角は区別される。
- 意味のある名前をつける: 変数名は、その変数が何を表しているのかがわかるような名前にすることが重要です。たとえば、「x」よりも「age」や「price」などの方が、その変数が何を表しているのかが明確になりますね。
- Pythonの予約語は使えない: Pythonには、「if」、「else」、「while」など、すでに特定の意味が割り当てられているキーワードが35個ほどあります。これらの予約語は、変数名として使用することはできません。
変数を使った式
変数に値を保存して、その変数を使って式を作ることもできます。
a = 10
b = 20
c = a + b # 結果は30
この例では、a
とb
にそれぞれ値を代入し、その後でa + b
を計算して結果をc
に保存しています。
データ型の理解
そして、データ型について学びました。Pythonでは、変数に格納されるデータの種類を「データ型」と呼びます。
基本的なデータ型には、整数型(int)、浮動小数点型(float)、文字列型(str)、リスト型(list)などがあります。
基本的なデータ型
- 整数型(int): 整数を扱うデータ型です。たとえば、年齢や個数など、切りの良い数字を表すのに使います。
age = 30
- 浮動小数点型(float): 小数を扱うデータ型です。価格や測定値など、端数を含む数値を扱うのに便利です。
price = 19.99
- 文字列型(str): 文字列を扱うデータ型です。名前やテキストを表現する際に使います。文字列はシングルクオート(‘)またはダブルクオート(“)で囲みます。
name = 'Alice'
- リスト型(list): 複数のデータをまとめて管理するためのデータ型です。たとえば、複数の得点を一つのリストにまとめて管理することができます。
scores = [85, 90, 88, 92]
データ型の変更
Pythonでは、変数に格納するデータの型を変更できます。
同じ変数に対して、異なるデータ型の値を再度割り当てすることが可能です。
例えば、以下のコードは、同じ変数「x」に異なるデータ型の値を代入しています。
x = 10 # 整数型
print(x)
x = 3.14 # 浮動小数点型
print(x)
x = "Hello" # 文字列型
print(x)
このコードを実行すると、それぞれの値が出力されます。Pythonは非常に柔軟で、型の変更も簡単に行えるため、初心者にとって非常に扱いやすい言語です。
データ型を確認する方法
データ型を確認するためには、type関数を使います。この関数は、引数として与えられた値のデータ型を返します。以下は例です。
x = 5
print(type(x)) # 出力されるのは⇒<class 'int'>
y = 3.14
print(type(y)) # 出力されるのは⇒<class 'float'>
z = "Hello"
print(type(z)) # 出力されるのは⇒<class 'str'>
このように、type
関数を使うことで、変数のデータ型を簡単に確認することができます。
文字列の中に数値を埋め込む
数値は数値同士、文字列は文字列同士でしか演算できないが、format関数を使えばできる!
name = '東京 太郎'
age = 23
height =175.6
print('私の名前は{}で、年齢は{}歳で、身長は{}cmです'.format(name, age, heigght))
# 「私の名前は東京 太郎で、年齢は23で、身長は175.6です」と出力される。
’{}を含む文字列’.format(埋め込む値1,埋め込む値2, ・・・)
さらに、f-stringで文字列に数値を埋め込むこともできる!
name = '東京 太郎'
age = 23
height =175.6
print(f'私の名前は{name}で、年齢は{age}歳で、身長は{height}cmです')
# 「私の名前は東京 太郎で、年齢は23歳で、身長は175.6cmです」と出力される。
私はこちらの方が見やすく使いやすいと感じました!
学んだことの要点
- プログラムはさまざまな部分に式を含むことができる。
- 式は演算子とオペランド(数値や文字列)によって構成される。
- 算術演算子を使うと、数値の四則計算や文字列の連結を行うことができる。
- 式は実行されると評価され、式に含まれる各演算子が周囲のオペランドを巻き添えにしながら、計算結果に置き換わっていく。
- 優先順位が高い演算子から順に、同じ順位の場合は左から評価される
- プログラム中に書き込まれた具体的な数値や文字列をリテラルという。
- 情報の種類をデータ型といい、int/float/str/boolが代表的である。
- 数値と文字列の組み合わせでは演算できないため、型変換か関数を用いる。
- 変数には代入演算子を用いて数値や文字列を保存(代入)できる。
- コードの中に変数を記述すると、変数の中の値を利用できる。
- 変数の命令は原則として自由だが、予約語など注意すべきルールがある。
練習問題: 基本的な演算を使ってみよう
さて、ここで学んだことを活用して、いくつかの練習問題を解いてみたいと思います!
練習問題を通じて、変数とデータ型の理解をさらに深めたいと考えましたので、ChatGPTに作成してもらいました。
問題 1: 2つの数値を足し算するプログラム
まず、2つの数値を足し算して、その結果を表示するプログラムを作成します。以下のコードをGoogle Colaboratoryで実行してみます。
a = 15
b = 7
sum_result = a + b
print(f"{a} と {b} の合計は: {sum_result}")
問題 2: ユーザーからの入力を使って計算
次に、ユーザーから入力された値を使って計算を行います。input関数を使って、2つの数値を入力し、その合計を計算してみましょう。
num1 = int(input("1つ目の数値を入力してください: "))
num2 = int(input("2つ目の数値を入力してください: "))
sum_result = num1 + num2
print(f"{num1} と {num2} の合計は: {sum_result}")
練習問題を解いた感想
実際に練習問題を解いてみると、最初は「本当にこれで合っているのか?」と不安に感じることもありました。しかし、コードを実行して正しい結果が得られたときの達成感はとても大きいです。特に、ユーザー入力を使ったプログラムは、私が書いたコードがリアルタイムで動いているという実感が湧いて、非常に楽しかったです。
変数、データ型、式と演算を学んでみて
データ型に関するトラブル
データ型を学ぶためにいろいろと実際に打ち込んでみると、いくつかのトラブルに直面しました。その一つが、データ型の不一致によるエラーです。たとえば、文字列と整数を一緒に操作しようとすると、エラーが発生することがあります。これを解決するためには、strやintなどの型変換関数を使って、データ型を揃える必要があります。
これは手を動かして慣れるしかなさそうです。
age = 25
name = "Alice"
greeting = "Hello, " + name + "! You are " + str(age) + " years old."
print(greeting)
このコードでは、ageを文字列に変換してから文字列の結合を行っています。こういうことに気づかないとエラーになってしまいます。
Pythonを学ぶためには
Pythonを学ぶためにはただ教科書を読むだけではなかなか理解ができません。
変数やデータ型といった普段の生活で聞きなれない単語が出てきましたが、実際にコードを書くことが理解への近道だと感じました。
私は次の点が重要だと感じています。
- 手を動かすこと: 理論だけでなく、実際にコードを書いてみることが重要。コードを書くことで、学んだことが具体的にどう動くのかを理解することができます。
- エラーを恐れないこと: プログラミングにおいてエラーは避けられないものです。エラーが出たときは、それを解決するチャンスだと捉えましょう。エラーを通じて、より深く学べることがたくさんあると思います。
- 小さな成功を積み重ねること: 大きなプログラムをいきなり書こうとするのではなく、小さなプログラムを一つ一つ作成していくことで、自信をつけることができると思います。
最後に
プログラミングの学習は、最初は戸惑うことも多いですが、同時に楽しい気持ちもあります。今回学んだ変数とデータ型は、これからのプログラミングの基礎となる重要な部分です。
次回はリストとタプルについて学ぶ予定ですが、今回学んだことをしっかり復習して、次のステップに進みたいと思います。
コメント