挫折することにした【Pytyhon勉強中】


このエントリーをはてなブックマークに追加

ここからちょっと広告です。

広告は以上です。

年末年始のお休みに入りました。仕事がないとPythonがはかどりますね。最近「もしかして、自分がやりたいことを実現するのはPythonではなくReactやnode.jsなのでは?」という不安が頭をよぎっているのですが、どんな言語であっても、一定のレベルまでマスターすることには意味があるはずです。たぶん。

なにより、楽しいので別にいいです。

なのですが、このたび、はじめて挫折することにしました。

つまづいた箇所は、いつもの本『退屈なことはPythonにやらせよう』の演習プロジェクトの箇所。こんなのです。

9.7.3 連番の飛びを埋める
ひとつのフォルダの中で、sample001.txt、sample002.txtなどの、指定した接頭辞を持つ連番ファイルを探し出し、連番が飛んでいる箇所(例えばsample001.txtとsample003.txtがあって、sample002.txtがない)を見つけるプログラムを書きなさい。このとき、番号の飛びを埋めるように、後に続くファイルの名前を変更してください。

連番が飛んでいる箇所を見つけるところまでは、できたのです。こんな風に書きました。

フォルダの中で連番が飛んでいる箇所を見つける : GitHub Gist
スクリーンショット 2020-12-29 21.46.32

実行すると、例えば以下のような感じで、抜けているところを教えてくれます。

sample001.txtはあります。
sample002.txtはあります。
sample003.txtはあります。
ない! sample004.txt
sample005.txtはあります。
sample006.txtはあります。
ない! sample007.txt
ない! sample008.txt
ない! sample009.txt
sample010.txtはあります。

しかし!
ここから「番号の飛びを埋めるように、後に続くファイルの名前を変更」というのが、難しかった。

いろいろと頭をひねったし、もう観念して回答例も見たのですが、どうも腑に落ちない。

そこで、しばし長考に入りまして。

このまま、ここが理解できるまで考え続けるか。
そもそも、例題のように、ファイル名を変えてまで連番を維持する状況って、今までなかった気がする。
それに、回答例も、ひどく高度というか、ややこしい気がする。

ここを完全習得すると、プログラミングスキルのレベルがグンと上がるのだろうか? やりたいことをより自由自在にやれるようになるのだろうか?
ここの章の肝は、shutilだ。ファイル名変更はshutil.moveだ。
それはもうわかったから、とりあえず、ここは飛ばしても致命的ではないのではないか。
ブログにこうやって「できませんでした!」と書いておいて、いつかレベルが上ったとき、またチャレンジすればいいのではないか?

それとも、この考えは逃げなのか。罠なのか。
こここそが非常に重要なロジック組みの部分で、ここはなんとしても習得しておくべき考え方の部分なのか。

しばし頭を抱えたし、悔しくもありましたが……
何日も何日も同じところでつまづいたままで、モチベーションそのものが落ちてしまうことのリスクの方が高いと考え、ここは戦略的撤退、飛ばし、次にGo、という判断を下しました。

みてろよ9.7.3。
いつか、何も考えなくてもスラスラ解決するコードを書けるようになって、もどってきてやる。たぶん……

Ads by Google

コメント

コメントは、Twitterやはてブに、以下のボタンから本記事のアドレスつきでツイート/ブクマしていただくと、上にあるzenbackのウィジェットに反映されます。
  このエントリーをはてなブックマークに追加
または同ウィジェット内のFacebookコメントでお願いしますー。

Facebookのシェアは……されても誰だかわからないのですが、シェア自体は嬉しいので、下にボタンを置かせていただきます。よろしくお願いします。