deep-learning-from-scratch-3 icon indicating copy to clipboard operation
deep-learning-from-scratch-3 copied to clipboard

内包表記の変数名が一貫していない

Open yaneurao opened this issue 5 years ago • 0 comments

https://github.com/oreilly-japan/deep-learning-from-scratch-3/blob/976e9bf3ad556ce06e1d6c2da78db02d52b4b6a1/dezero/core.py#L198

https://github.com/oreilly-japan/deep-learning-from-scratch-3/blob/976e9bf3ad556ce06e1d6c2da78db02d52b4b6a1/dezero/core_simple.py#L139

書籍のほうでは、後者になっています。おそらく、前者が直し忘れだと思われます。

それに関連してですが、内包表記の変数名が一貫していないのは感心しません。例えば、

https://github.com/oreilly-japan/deep-learning-from-scratch-3/blob/976e9bf3ad556ce06e1d6c2da78db02d52b4b6a1/dezero/core_simple.py#L128

こういうところで、変数名を何故xにするのでしょうか。(inputにしないのは何故なのか。outputsのときだけ変数名をoutputとするのは何故なのか) 一貫性がなくて見ていて気持ち悪いです。

ついでに書籍のほう、p.249

   y = self.outputs[0]()

ここ、weakrefだから"()"をつけていることを書籍のほうのソースコード上にも"#weakref"のようにコメントがついていたほうが親切だと思います。

それから、

   x, = self.inputs

tailing commaは、このコードを読まされる側としては見落としやすく、バグの原因になりやすいため、括弧をつけたほうがよろしいです。 cf.https://www.python.org/dev/peps/pep-0008/#when-to-use-trailing-commas

例)

   (x,) = self.inputs

yaneurao avatar May 02 '20 04:05 yaneurao