用Python编写的该程序的过程是什么?

时间:2019-07-20 07:29:01

标签: python python-3.x input output

我必须了解程序的过程,该过程看起来像在几个重复大小下测量乘法的性能。

我试图执行该程序,但是没有线索可以从输出中了解它。我需要使用此程序的帮助,请告诉我它的输入和输出内容。

import sys
import numpy as np
import matplotlib.pyplot as plt

if len(sys.argv) != 2:
    print ("usage:", sys.argv[0], "<filename>")
    exit()

a = np.loadtxt(sys.argv[1])

print(a)

list1, list2 = zip(*a)
plt.plot(list1, list2)
plt.show()

当我执行以上代码时,其输出如下。

$ python sample.py
usage: sample.py <filename>

回答后的尝试

我已经执行了如下程序。 代码“ sample.py”没有变化。 如何解决错误以及fileToRead.txt中合适的内容是什么?

$ python sample.py fileToRead.txt
3.1415926535
Traceback (most recent call last):
  File "arrmultbysize.py", line 24, in <module>
    list1, list2 = zip(*a)
TypeError: iteration over a 0-d array

fileToRead.txt

3.1415926535

1 个答案:

答案 0 :(得分:0)

您似乎是编程世界的新手。 “ sys.argv” 用于获取命令行参数

  • 当您以“ python sample.py”身份运行时,变量sys.argv将是单个元素列表,即[“ sample.py”]
  • len(sys.argv)在这种情况下为1

该程序的预期工作原理是:

  • 当您以“ python sample.py fileToRead.txt”运行时,变量sys.argv将是两个元素列表,即[“ sample.py”,“ fileToRead.txt”]
  • 在这种情况下
  • len(sys.argv)是2