首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Basic编程- 2D列表

Python Basic编程- 2D列表
EN

Stack Overflow用户
提问于 2016-01-17 16:15:35
回答 1查看 2K关注 0票数 0

我对Python编程很陌生。我的任务是:

对于这个实验室,您将使用Python中的二维列表。做以下工作:

  1. 编写一个函数,该函数使用以下标头def sumColumn(矩阵,columnIndex)返回矩阵中指定列中所有元素的和
  2. 编写一个函数,该函数逐行显示矩阵中的元素,其中每一行中的值都显示在单独的行上(请参见下面的输出)。输出的格式必须与示例输出中的格式相匹配,其中一行上的值由单个空格分隔。
  3. 编写一个测试程序(即主函数),读取3X4矩阵并显示每列的和。应该格式化和,使其包含小数点之后的一个有效数字。必须输入来自用户的输入,在下面运行的示例程序中,输入逐行读取,一行中的值由单个空格分隔。

示例程序运行如下:

输入第0: 2.5 3 4 1.5行的矩阵行3乘4矩阵行1: 1.5 4 2 7.5输入第2行3乘4矩阵行: 3.5 1 1 2.5矩阵行

矩阵为2.5 3.0 4.0 1.5 1.5 4.0 2.0 7.5 3.5 1.0 1.0 2.5

第0栏的元素之和为7.5,第1栏的元素和为8.0,第2栏的元素和为7.0,第3栏的元素和为11.5

下面是我到目前为止掌握的代码:

代码语言:javascript
复制
def sumColumn(matrix, columnIndex):
    total = (sum(matrix[:,columnIndex]) for i in range(4))
    column0 = (sum(matrix[:,columnIndex]) for i in range(4))

    print("The total is: ", total)
    return total

def main ():
    for r in range(3):
        user_input = [input("Enter a 3-by-4 matrix row for row " + str(r) + ":", )]
        user_input = int()


    rows = 3
    columns = 4
    matrix = []
    for row in range(rows):
        matrix.append([numbers] * columns)
        print (matrix)

main()

 it prints out:
[[0, 0, 0, 0]]
[[0, 0, 0, 0], [0, 0, 0, 0]]
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2016-01-17 17:06:25

你应该把它当作参考,否则你什么都学不到

代码语言:javascript
复制
PROMPT = "Enter a 3-by-4 matrix row for row %s:"

def sumColumn(matrix, columnIndex):

    return sum([row[columnIndex] for row in matrix])

def displayMatrix(matrix):

    #print an empty line so that the programs output matches the sample output
    print

    print "The matrix is"
    for row in matrix:
        print " ".join([str(col) for col in row])

    #another empty line
    print

    for columnIndex in range(4):
        colSum = sumColumn(matrix, columnIndex)
        print "Sum of elements for column %s is %s" % (columnIndex, colSum)

def main ():

    matrix = [map(float, raw_input(PROMPT % row).split()) for row in range(3)]
    displayMatrix(matrix)

if __name__ == "__main__":
    main()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34840514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档