python3のfor文について質問data = [1, 2, 3, 4, 5]# dat

Writer: admin Type: タブレット端末 Date: 2018-12-14 00:00
python3のfor文について質問data = [1, 2, 3, 4, 5]# data配列の中身を2倍にするnewData = []for d in data:____newData.append(d * 2)↑これをnewData = [d * 2 for d in data]と書けますが例えばnewData = []for d in data:____newData.append(d * 2)____print("print")の時に1行に書き換えはどうすればいいのでしょうか?共感した0###____print("print")のようなものを含むのに「1行に書き換え」ることに意味はあるのでしょうか?a = [ print(i) for i in [ x * 2 for x in data ] ]とするとなんとなく似た感じになりますが、aを生成する意味がないと思います。「a =」を除いてもオブジェクト自体は作られます。リスト内包表記は書き換えるためのものでなく、変換結果を新たなオブジェクトとして生成するのが目的ではないでしょうか。ナイス0

 

TAG