标题说明了一切。 我遇到这个问题最困难的部分是我不允许使用 sum()。
我不知道如何创建矩阵,我正在寻找一些帮助来创建和填充矩阵。
这是我到目前为止所知道的。
def random():
import random
x=random.random()
return x
def create_matrix(x,y):
random.seed(1)
def main():
random()
main()
对不起,如果有什么不重要的,我感谢你的帮助。
Enter the number of rows: 3
Enter the number of columns: 2
Enter the threshold for column sum: .5
---------------------------------------
|| || 1 | 2 | sum ||
---------------------------------------
|| 1 || 0.134 | 0.847 | 0.982 ||
|| 2 || 0.764 | 0.255 | 1.019 ||
|| 3 || 0.495 | 0.449 | 0.945 ||
---------------------------------------
|| sum || 0.63 | 0.70 | 2.9 ||
---------------------------------------
我得到了这张表,但我也缺乏如何格式化的知识。 我认识到破折号等于格式化行的长度,并且表示行和列的数字居中。 此外,小数只能执行三个位置,底部的位数是两个位置,最后的总和只有一个位置。
答案 0 :(得分:0)
这样的东西有用吗?
import random
def create_matrix(x,y):
matrix = []
for i in range(x):
matrix.append([])
for j in range(y):
matrix[i].append(random.random())
return matrix
def main():
matrix = create_matrix(3, 2)
for row in matrix:
print row
main()
修改强>
处理ValueError:
def main():
while(True):
try:
x=int(input('Enter the number of rows: '))
y=int(input('Enter the number of cols: '))
matrix = create_matrix(x, y)
for row in matrix:
print row
break
except ValueError:
print "Just give integers please. Try again."
修改2
def print_matrix(matrix):
print "-" + "------------"*len(matrix[0])
for i in range(len(matrix)):
print "|",
for j in range(len(matrix[i])):
print "{0:9} |".format(matrix[i][j]),
print
print "-" + "------------"*len(matrix[0])