新しいアカウントで始めました。

身の回りの出来事や写真が中心です。

cametan_42さんの練習問題nineteenをRubyで書いてみる。

2021-10-13 14:19:06 | Ruby

cametan_42さんがPythonのリスト内包表記の練習問題の回答含みで書いてます。今回は19回目。

 上の図のコードは、cametan_42さんのブログをコピペしたものですが、意外な落とし穴がありました。一番最後のnimeteen()は上のコードを実行するもので、自分が付け加えました。更にその上の2行が問題でした。本来であれば、nineteen()に含まれるもので、一番左から始まるものではないのですが、やってしましました。Nineteen()にエラーのアンダーラインが付いてました。でも、実際は上のようでありました。Pythonは終わりを表す、endが無いので、こんなとこ注意ですかね。

 def nineteen内でclass Nineteenを宣言してますが、ローカル関数というものがある例えばKotlin、Scalaなど、これはローカルクラスですかね?関数def以外では使われないクラスがNineteenとうことですかね?


コメント (2)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« cametan_42さんの練習問題eig... | トップ | cametan_42さんの練習問題twe... »
最新の画像もっと見る

2 コメント

コメント日が  古い順  |   新しい順
Rubyでは無理そうです、多分 (isam)
2021-10-13 22:43:59
関数の中にクラスは出来ないようです。色々イジってみましたが、結局のとこ、[1,2,3].での機能と同じ。なので、例にあるように関数1個で、全てできるようには出来ないと、思います。
返信する
ローカルクラス (cametan_42)
2021-10-13 17:20:32
> これはローカルクラスですかね?関数def以外では使われないクラスがNineteenとうことですかね?

そういう事です。

「他で使い回せないクラス定義なんざ意味がないんじゃないの?」

ってのはその通りなんですけど、Pythonはそれを許す、ってのが他の言語(JavaとかC++とか)に見られない大きな特徴と言えるかもしれません。
返信する

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Ruby」カテゴリの最新記事