第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何在不使用任何導(dǎo)入或 sum 函數(shù)的情況下對(duì)嵌套列表中的列值求和?

如何在不使用任何導(dǎo)入或 sum 函數(shù)的情況下對(duì)嵌套列表中的列值求和?

倚天杖 2022-11-01 16:05:06
我被要求在嵌套列表的每一列中找到第一個(gè)值的總和。如何在不使用導(dǎo)入或 sum 函數(shù)的情況下執(zhí)行此操作? def column_sums(square):    """Returns the sum of the columns"""    result = []    i = 0    for element in square:        n = 0        for item in element:            if item == element[n]:                i = i + item        n = n + 1    result.append(i)    i = 0    return resultsquare = [    [1, 2, 3, 4],    [5, 6, 7, 8],    [9, 10, 11, 12],    [13, 14, 15, 16]]print(column_sums(square))這是我想出的,但它只返回第一列的值。我怎樣才能得到這樣列出的所有列的總和?:[28, 32, 36, 40]
查看完整描述

3 回答

?
嚕嚕噠

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊

對(duì)于沒(méi)有任何內(nèi)置函數(shù)的純循環(huán)方法:


def column_sums(square):

    result = [0] * len(square[0])

    for row in square:

        for i in range(len(result)):

            result[i] += row[i]

    return result

以下使用zip(*...)換位模式:


def column_sums(square):

    result = []

    for col in zip(*square):

        total = 0

        for num in col:

            total += num

        result.append(total)

    return result


square = [

    [1, 2, 3, 4],

    [5, 6, 7, 8],

    [9, 10, 11, 12],

    [13, 14, 15, 16]

]

print(column_sums(square))

# [28, 32, 36, 40]

請(qǐng)注意,您通過(guò)壓縮行來(lái)獲取列。如果您可以使用sum和所有其他內(nèi)置插件,以下將是最短的:


print(list(map(sum, zip(*square))))


查看完整回答
反對(duì) 回復(fù) 2022-11-01
?
人到中年有點(diǎn)甜

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超7個(gè)贊

在這里,您可以使用我想到的最簡(jiǎn)單的溶膠,而無(wú)需使用任何花哨的東西。


def column_sums(square):

    """Returns the sum of the columns"""


    result = [0,0,0,0]

    for element in square:


        for i,item in enumerate(element):

                result[i] = result[i] + item   

    return result


查看完整回答
反對(duì) 回復(fù) 2022-11-01
?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊

用這個(gè):


def column_sums(square):

    result = dict.fromkeys(len(square), 0)

    for i, v in enumerate(zip(*square)):

        for x in v:

            result[i] += x

    return result


square = [

    [1, 2, 3, 4],

    [5, 6, 7, 8],

    [9, 10, 11, 12],

    [13, 14, 15, 16]

]

print()

或者sum你實(shí)際上可以使用:


square = [

    [1, 2, 3, 4],

    [5, 6, 7, 8],

    [9, 10, 11, 12],

    [13, 14, 15, 16]

]

print(column_sums(square))


查看完整回答
反對(duì) 回復(fù) 2022-11-01
  • 3 回答
  • 0 關(guān)注
  • 159 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)