私はプログラムを表示してインベントリレポートを作成していますが、私はforループの代わりにリストの理解にどのように置くことができるのだろうかと思っていました...このすべてのpythonの専門用語ではなく、私はforループの形をしているものは、リストの内包表記のように表現することができるということである知っているからnoobの....すべてのヘルプはforループからリストの理解へ
def rowSum(TotSize,data,row,col):
"""Calculates the sum of each row in a given 2 dimensional list and stores
it into a given one dimensional list"""
for i in range(row):
sum = 0
for j in range(col):
sum += data[i][j]
TotSize[i] = sum
本当にリストの理解が欲しいですか?これは 'map'と' sum'の仕事のように見えます( 'map'とリスト内包は同じアイデアを表現するには本当に異なる方法です)。 –
"* forループの形をしたものは、リストの理解として表現することもできます*" - これは実際には当てはまりません。他のリストの関数によってその要素が明示的に**定義されているリストは、リストの理解として書くことができます: 'newList = [otherListのxのf(x)]'。これは 'map'と多くの言語で同じです:' newList = otherList.map(f) '。いくつかのリストは、1Dセルオートマトン、2D動的プログラミングテーブル、または副作用を伴う関数(あなたのrowSumの 'sum'のような)のように、簡単に表現することができません。 (あなたのように合計を書いたり、 'reduce'を使います) – ninjagecko
"とし、それを "に保存します。戻り値を使用して値を返します。 –