2024/04/08 「PyPyむず美」
・今日からPythonの基礎試験問題集の学習に入る。
・これは、この日記はもう、自分のPythonにおける”わからない”を列挙するメモ。だが大事なことだ。
・正直Python を使用して何をしようとか、全然考えられていない。考えられていないが……なんだ、結構モチベーション高い。どのくらい高いかと言えば、仕事から帰ってきて即勉強に入るレベルには高い。ヤバ、高すぎじゃあないか??
・以下、メモ!!!
Pythonの特徴編
・やっぱり用語のことを知らなすぎる。コンパイルって何?
コンパイル:ソースコードの実行前に行われるコンピュータへの命令への変換のこと。Pythonにはコンパイルが必要ない。
・ソースコードってなんだよ。
ソースコード:ソースコードとは、何かのプログラムを作る際に、そのプログラムに「どんな動作をさせたいか」という処理の内容を書いたテキストファイルのこと。
・……Pythonにはコンパイル不要ってことね。クソ暗記は時に救い。
・対話モードって何?
対話モード:対話モードはインタプリタ上で、そのままPythonプログラムを入力・実行できます。 Pythonスクリプトのファイルを作らずともその場でプログラムの確認ができる便利な機能です。
・一次プロンプト、二次プロンプトって何??
プロンプト:「動作をするよう促すもの。」Pythonの対話モードにおいては、>>>で入力を促される一次プロンプトと、・・・で入力を促される二次プロンプトがある。対話モードでは一個一個のソースコードを書きやすく誘導してくれてるし、一個一個書いたら、その都度プログラムの動作を確認できる便利機能ってことやね。
・……インタプリタって何?
インタプリタ:コンピュータでプログラムを処理する方法の一つです。 プログラムの実行時にソースコードを1行ずつ機械語プログラムに変換するプログラムのことでもあり、コードを読み込みながらその場で処理・実行していきます。
・Pythonスクリプトって何?
Pythonスクリプト:Python 関数などが書き込んであるファイルを Pythonスクリプトと言います。 ファイルに書いておけば、そのファイルを消さない限り何度でも同じ Python スクリプトを実行できるし、 後で必要に応じて書き換えてゆくことによって違う処理を実行することができます。
・エンコードって何?
エンコード:ざっくりいうと、元のデータを、別の形式のデータに変換すること。
・エンコードとコンパイルの違いって何?
コンパイルは人間が作ったソースプログラムをCPUが実行出来る機械語に翻訳する事です。一方、エンコードは何らかの目的でデータの構造を変更し、使用時にデコードで復元したい場合に使用します、たとえば、写真を圧縮して容量を減らして記憶したい場合等に使います。
・文字コードって何?
アルファベットやひらがななど、文字はたくさんある。しかしながら、マシンにはマシン語しかわからないから、マシンが理解できる数字に当てはめて覚えさせるしかない。これら文字に数字を割り当て、ある決まりに従って呼び出せるようにしたものが文字コード、という解釈をした。ざっくりではあるが、ある文字コードでは、「あ」に1、「い」に2が割り振られているというようなイメージ。
文字コードにはPython におけるデフォルトのUTF-8や、ひらがな・カタカナ・漢字に対応したShift-JISなどがある。
・なるほど、ちょっとわかった。我々はPythonでプログラムを記述するとき、Python語で「こういう風にプログラムよ動け~」と書く。ここで書かれるのが”ソースコード”と呼ばれるものなのか。いざソースコードを記載するが、パソコンってのはパソコン語でしか命令を理解できないから、ソースコードをパソコン語へ変換する工程が必要になるんだな~。変換のためには同時通訳(インタプリタ)か、一括翻訳(コンパイラ)のいずれかが必要なんだ。Python語はパソコン語への変換を、インタプリタによって行っている。(コンパイルが不要な言語であることと関係があるのだろうか?)
さて、Pythonには「対話モード」と呼ばれるモードがある。これは、ソースコードを一つ打ち込むごとに、その動作を確認してくれる便利機能。対話モードでは、我々ユーザーがソースコードを打ち込むように促す「プロンプト」が提示される。このプロンプトは2つ。一次プロンプトと二次プロンプト。複数構文を記載するときには二次プロンプトの入力が促される…ということか。
基本、我々はPythonでソースコードを打ち込むとき、デフォルトの文字コードであるUTF-8を用いて記載を行っている。
・基本のキで2時間もつかっちまった~~
”テキストと数の操作”編
・””” ”””(トリプルクォート)って何?なんでこんなの使わなきゃいけないの?
トリプルクォート:トリプルクォーテーションで囲むことで、改行を含む文字列をそのまま表現でき、改行コードの入力を省略することができます。いつかアプリとか作るとき、ボタンが横並びになってたら使いづらいかもしれないから、改行したほうがええよってこと?あってるか???
・フォーマット済文字列(f文字列)って何?
・フォーマット指定子って何?
・format()メソッドって何?
・「文字列の詳細なフォーマット」って何…?
”リストの操作”編
・スタックって何?
・「リストをスタックとしてとらえる」と何が嬉しいのかがわからない。
・.appendと.popが混ざっているの、意味わからなすぎる!!!!!
”判定と繰り返し”編
・forループのこと、全然わからんな……
・while、全然わからんな~~~
・短絡演算子については理解できた。…と思う。だが、
def num(value):
return value
value1 = num(0) and num(1) and num(2)
value2 = num(0) or num(1) or num(2)
これ、なんでvalueが整数だっていうことになっているんだろうか…?いつvalueが整数だって言ってるんだ?value1とvalue2のnum( )の( )内が整数表記だから・・・てこと?
・enumerateのこと全然理解できん。インデックスと要素を同時に取得する必要が一体どこに…??どういう風に使うか、気になるっす!!!
・zip()関数って何~~~~!!!!!????全然わからんのやが!!!???
・本日は以上!!!眠いし!!!
・解説見てもわかんなかったところは明日また調べます。は~~~~~~。サルでもわかるPython、だれか出版してくれねえかな。
・いや、やっぱり出さないでほしい。理解できなかった時、俺はサル以下か!!!!!????そう言いてえのか!!!!????ってキレちゃうと思うから……。
-終わり-
この記事が気に入ったらサポートをしてみませんか?