2024/04/07「どこがわかりやすいのかがわからないの」

・4月7日の日記とか言っておいて、全然4月6日に書いているのだった。

・Pythonわかんねえ~~~~~~~

・はやたすさんの動画見て勉強したんだけど、全然わかんねえんですよね。イニット?クラス?とか、何を言っているのかがマジでわからない。動画のコメント欄にはめちゃめちゃ頭の良い人たちがたくさんいるようで、「わかりやすい!!」とか言ってるし、、、俺だけしかわかってないのかな……と落ち込む。

・classというのは、整数であったり、文字列であったり、”辞書”と呼ばれる、ある名称のもの(keyと呼ぶらしい)とそれに対応する値(valueと呼ぶらしい)のデータ群であったり……オブジェクト、というやつらであるらしい。このclass、自分で定義して増やせるらしいんだけど、なんでそもそもクラスを新しく増やさなきゃあいけないんだ!!!!!????????????もうクラスなんか増やしたくねえよ!!!!????俺は!!!!!!!

・関数はまあ、ほんのちょっとよ?ほんのちょっとわかるような気がする雰囲気がある。エクセルっぽいし。だが、なんなんだあれは!!!????何でreturnの話をしてたのに次の説明ではresultになってんだ!!!!!!おおおおおおおおおおおいいいいいいいいいいい!!!!!!!!!!!!!!!!!!!!!!!!!!!わからないよ~~~~~~~~~~~~~~!!!!!!!!絶叫しちゃう。

・とりあえず動画を見終わったけど、2時間30分ある動画を、大体7時間くらいかけて見たけど、もう全然わかんないんすわ。。。。。。。。。。。。わかんないんすわ~~~~~~~~~~~~!!!!!!!!!!!!!!!!!!!!!!!!!!こんな困難な道のり、歩いていけるのか…???2週後のテスト、もう申し込みしちまったが??????????????

・ぷえ~~~~~~~~~~~~~~。

・明日はまた動画見て勉強して、日記に覚えたことを書いていって、学習内容と齟齬があるか否か調べていこうかな。頭悪いから全然わからん。おなかもすいてる!!!!!!!!!バカ!!!!!!!!バーーーーーーーーカ!!!!!!!

===食事並びに睡眠===

・4月7日になり、そして、制御構文のforループとwhileの使い方の違いがわからないのだった。

・    for 変数 in range(任意の範囲):
    print( 変数 )
で、任意の範囲を5とした時、変数に特定の数値を指定していないのに、出力結果は
0
1
2
3
4
となるの、なにがどうなってりゅんですの?????

・これがもう「0から数えて任意の範囲の整数まで、順繰り出力していってくれ」っていうコードなのか!!!そしたら、もしかして…「変数を3と置き、0から数えて12個まで順繰り出力していってくれ」というコードは、
i=3
for i in range(12)
    print(i)
になるってコト!!!???

ならねえですわ!!!!!!

・ワタクシはただ、3+0、3+1、3+2…3+11の計算結果を出力(だ)したかっただけですのに~~~~~!!!!

・つまりfor i in range():は任意範囲を数えて出力するってだけなのか…?いや、そんなはずはないな。だってこれメッチャ重要そうだし。

・これ本当に衝撃なんだけど、インデントによって出力結果が違うの、マジ?????

printをいっちゃん左に置いたとき
printを条件ifに合わせた場合

・おいおいおいおいおいおいどこまで難しいんだよ。

・forループ全然理解できねえ~~~~リスト内包表記も意味わからん。
forループで回すってなんやねん。forループで回せねえよ。forループはロクロか???????forループはロクロじゃあねえからよ、回せねえよ。

・しかもなんだ??この例題は……
「ある複数の整数を要素に持つリストnumbersがあって(←わかる)、ここから10以上30未満である数字を抽出したい(←わかる)これをforループ及びリスト内包表記を用いてコーディングせよ(←わからん)」

・解法は以下であるとのこと。
numbers = [13,45,68,12,31,21,22,5,19]
new_numbers = [n for n in numbers if 10 <= n < 30]
print(new_numbers)   

・まてまてまて、nってなんだ。いつnについてやったんだ。そしてnew_numbersなんてどっから出てきたんだ。あと、forループの任意範囲ってrange()で指定するんじゃあないのか???なんでいきなりnumbers…が、これはなんだ?何が起こっていやがる?????そして条件文、if。これは分かる。そして極めつけ、括る([ ])の何???

・書いててちょっと理解したんだけど、new_numbersっていうのは、新たなリストの名称ってことか。numbersというリストの中から10≦n<30を見たす変数nを抜き出して、新たに作ったリスト。この名称は別に、new_numbersでなければならないわけではなくて、unchi_bichibichiだろうが、chinpo_planplanでもいいってことだし、変数は、他に決まっている文字がなければuだろうがcだろうがなんでもいいってこと。だから、new_numbers = [リストの中身]という風に書く必要がある。そんで、forループの範囲。これは、numbersというリストの中から(in)、もし10以上30未満の整数があれば、列挙せよ、という指令を出すためのコードなんだね。
for ループとか、forの前に変数を置くっていう内包表記特有の記載方法は、そういうもんだと思うほかない。理由付けがないから覚えにくい……

・辞書メソッドがなかなかなじまない。
例えばフルーツとフルーツの値段を要素に持つdictがあったとし、そのデータ群をfruitsと名付けると仮定する。フルーツの品ぞろえは、リンゴ、バナナ、桃であり、値段はそれぞれ100円、200円、220円だ。fruits =

fruits = {"apple":100, "banana":200, "peach":220}
これをprint(fruits)で出力してやれば、リストの出力ができるってこと。

このfruitsっていう辞書の中にある、値段あるいは品名だけ列挙したいよって場合。ここにforループが使われるらしい。uwa~~~~~~~~~~~~o

品目のことをkey と呼ぶらしい。だから、品名列挙の際には、以下のように記載する。
for key in fruits.keys():
    print(key)

複数形と単数形でまざてるヨ~~~~~~おぼえにくいヨ~~~~~!!!しかも.keysの後ろに( )を入れる必要がある。この( )なんなんだ。わっかんねえ~~~~~~。値段列挙の場合にはvalueにするとのこと。

・マジでforループで回す、っていうの意味わからん。皿回しのお箸じゃないんだぞ。回せんぞ。

・調べたら、ループを回す、という言い回しがあるとのこと。意味は繰り返す。ただ、ループで回す、というのは意味が分からん。

・キーとバリューを同時に取得するための解説で、意味わからんかったので文章に当たってしまった。結果、itemsを利用すればええやん。ということが分かった。難しいこと考えんでええねん。

・関数わからないな~~~~平均値を求める関数の設定をしたいんだけど…def calc_average(numbers):
    avg = sum(numbers)/len(numbers)
    print(avg)

これを設定後、いろんな数値の集合(numbers)を記載。

numbers1 = [2,9,7,5,64]
numbers2 = [3,8,97,4,54]
numbers3 = [4,6,97,64,1]

calc_average(numbers1)
calc_average(numbers2)
calc_average(numbers3)

これでそれぞれの平均値が出るんだけど、この状態では、「関数の外」と呼ばれる場所では使用できないとのこと。そもそも関数の中、外って何?関数の外ってどういう状態なんすか????意味わかんねえです!!!!!!!

・ちょっとわかってきた。今回、私は平均を求める関数における変数をavgとして設定した。このavgは、このdef以下の関数内でのみ定義されている、ということか。であれば、この関数以外の場所ではavgが定義されていないから、例えばprint(avg)って入力したところでエラーが出るよね。

・…でも、私はこの計算式を呼び出すときにはavgを使用せず、calc_average(numbers)で呼び出しているから、別にavgを使わなくたっていいじゃないか。

「print(avg)とせず、return avg とすると、関数の呼び出し元にavgを返せる??????????」なんて??????どういう意味??????
①関数の呼び出し元とは何????
②avgを返すとは????
③なぜそんなことを????
④そもそも、今、関数の外で使用できない状態なんですか????
わからん!!!!!!!!!

・まあ、難しいことは考えないほうが得かもしれない。
とにかく、出力のコードは、return 変数 で入力すれば汎用性が高い、ということで。

・とりあえず今日の学習は終了。明日からは練習問題をやっていきながら勉強していこう。しゃあない。これからよ。理解はこれから。

-終わり-

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