Pythonの1行ループは、リストの作成にのみ使用できますか?(つまり、リスト内包表記)、またはより一般的なコンピューティングに使用できますか?
たとえば、Pythonでのリスト内包表記(〜単一行ループ)を知っています。
my_list = [ 2*i for i in range(10)]
複数行のループで構築することもできます。
my_list = []
for i in range(10):
my_list.append(2*i)
しかし、一般的な複数行のループを常に1行のループに変換できますか?
たとえば、次の複数行のforループがあるとします。
my_array = np.ones(10*10)
for x in range(10):
my_array[x,:] = 0
それを単一行ループに変換できますか?より一般的には:
Q1。2つの形式は機能的に同等ですか?(つまり、同じ一連の操作/操作をサポートします)
Q2。Pythonの1行ループがベクトル化される前に読んだと思います。これは本当ですか?これは、複数行のループよりも高速に反復できることを意味しますか?