追記(2024/12/14)
一部の写真の;はなくても動くそうです。
この記事は、JavaとPythonを基礎から学びたい私のための Advent Calendar 2024の13日目の記事です。去年それなりに学習したので、今年はまだ勉強していない部分も学習していきます。
Pythonもやります
Python
AIや画像処理などができます。ライブラリが豊富な言語です。自分は大学の講義で使いました。Googleだと、Pythonが使えるサイトとしてGoogle Colabがあります。Pythonの中にも、「Python2」と「Python3」の二種類存在しているようですが、2のほうはサポートが終了しているようなので今回はPython3について学習していこうと思います。
Hello Worldから学ぶ言語の特徴
早速ですが、
print('Hello World')
たったこれだけです。Javaの時はclassとかvoidとかいろいろ必要なことを書いていましたが、Pythonではそんなもの必要ないみたいです。
配列
リスト(list)
listです。配列を調べたところ、リストは配列の一種となっていました。おそらくPythonでは、リストと配列が大体同じものとして扱われているのでしょう。
配列の使い方
A=[1,3,4,5,6]
ほかの言語と違うのは、最初にint[]などと書かなくてもよい点です。ちなみにintとかStringとかを指定しないので、
A=["a",3,4,5,6]
こんなことができてしまいます。Stringとintをひとつの配列に一緒に入れることができるみたいです。
A[1]=10
print(A[1]+A[3])
もちろんほかの言語同様に足し算をしたり要素の変更もできました。
タプル(tuple)
Pythonで初めて見ました。先ほどのリストは要素を[]で囲っていたのに対してこちらは()で囲むようです。また、生成した後の要素の変更(追加、削除)ができないといった特徴があるようです。
A=(0,1,2,3,4,54,6)
このようになります。要素の変更ができない以外はリストと同じです。
要素を変更しようとすると、
こんな感じでエラーが出ます。変更は無理です。
辞書(dict)
辞書のように、要素と情報をセットにしておくことができるやつです。Python限定?かと思われます
A={"1":"数字","a":"小文字","A":"大文字"}
こんな感じで書いてみました。:の左側に名前、右側にその説明を付けています。今回はたまたますべて文字列になってしまいましたが、もちろん数字を入れておくこともできるようです。この機能では、中の要素が存在するか検索したり:の片方に対応する説明(:のもう片方の情報)を確認することができるなど、確かに辞書っぽい性能をしていました。
要素があるか確認する方法⇩
print("a" in A.keys())
結果:True
"a"が存在しているかどうかを確認しています。今回は入っているのでtrueが返ってきます。
片方の情報に対応するもう片方の説明⇩
print(A["A"])
結果:大文字
まるで辞書を引いているかのように、対応する情報を返してくれます。[]の中に、調べたい情報を入力するだけです。
全体を出力する場合は想像の通りprint(A)とするだけなので説明は省略します。
復習
去年ざっくり学習した範囲をもう少し詳しく学習します。
for
A=[1,2,3,4,6]
for B in A:
print(B)
AをBとしてBを出力するfor文では、Aの内容が一行ごとに出力されていきます。ほかの言語とは違いforの行の最後、処理の前で;の代わりに:が使われます。
A={"1":"数字","a":"小文字","A":"大文字"}
for B in A:
print(B,A[B])
forを使うことで、先ほどの辞書の中身を一行ずつ出すことができます。
条件分岐
A=100
if A==100:
print (A)
結果:100
見ての通りです。forの時そうでしたが、条件分岐のifも条件に()が使われていません。Pythonでは()で囲まなくてもよいそうです。ただし、()で囲んだとしてもちゃんと処理が行われました。
Pythonでできなかったこと
//でコメントアウト
できませんでした。Pythonではコメントアウトする際に#を使用するようです。また、複数行をまとめてコメントアウトする際には'''か"""を使うようです。
Google colabの場合はなんか出ちゃってますが、
通常はこんな感じで無視されています。
まとめ
Pythonの配列は3種類存在しており、それぞれリスト、タプル、辞書と呼ばれている。Pythonではコメントアウトする際に#を用いている。forやifでは条件を()で囲まなくてもよい。
参考文献