python cod末尾打印“None”

2024-10-01 04:44:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图让一个python程序获取一个.dat文件并将其读入矩阵。我大部分时间都在工作,但是“无”总是在语句末尾打印。在

import sys

def main():

  matrix = generateMatrixFromFile(sys.argv[1])

  print(printMatrix(matrix))

def generateMatrixFromFile(fname):
  fp = open(fname, "r")
  row = fp.readlines()
  matrix = []
  for i in range(0, len(row), 1):
    token = row[i].split(" ")
    token[-1] = token[-1].replace('\n', '')
    matrix.append(token)
  fp.close()
  return matrix

def printMatrix(matrix):
  for i in range(0, len(matrix), 1):
    for j in range(0, len(matrix[i]), 1):
      print(matrix[i][j], sep=" ", end=" ")
    print()

main()

Tags: intokenforlenmaindefsysrange
3条回答

您的方法printMatrix(matrix)不返回任何内容(None),您可以在其上调用打印(print(printMatrix(matrix))

这条线:

print(printMatrix(matrix)) 

正在打印函数的返回值,即None。在

只要调用printMatrix(matrix)就可以得到预期的结果。在

删除此行的print

print(printMatrix(matrix))

让Python打印printMatrix的返回值,即None。在

相关问题 更多 >