inf = float('inf')
A = [[0,1,4,inf,3],
[1,0,2,inf,4],
[4,2,0,1,5],
[inf,inf,1,0,3],
[3,4,5,3,0]]
print('\n'.join([''.join(['{:4}'.format(item) for item in row])
for row in A]))
import numpy as np
def printArray(args):
print "\t".join(args)
n = 10
Array = np.zeros(shape=(n,n)).astype('int')
for row in Array:
printArray([str(x) for x in row])
如果只想打印某些索引:
import numpy as np
def printArray(args):
print "\t".join(args)
n = 10
Array = np.zeros(shape=(n,n)).astype('int')
i_indices = [1,2,3]
j_indices = [2,3,4]
for i in i_indices:printArray([str(Array[i][j]) for j in j_indices])
list comprehensions和^{} joins 的组合可以完成以下任务:
收益率
在Python中,使用for loops和索引通常是可以避免的,并且不被认为是“Pythonic”,因为它的可读性不如Pythonic的同类(见下文)。但是,您可以这样做:
更像是Python的表亲:
然而,这使用了30个打印语句,而我最初的答案只使用了一个。
总是有简单的方法。
我使用numpy生成数组,但是list-of-lists数组的工作方式应该类似。
如果只想打印某些索引:
相关问题 更多 >
编程相关推荐