Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用命令行选择文件,读取文件并将内容存储为矩阵(PYTHON、Visual Studio)_Python_Visual Studio - Fatal编程技术网

使用命令行选择文件,读取文件并将内容存储为矩阵(PYTHON、Visual Studio)

使用命令行选择文件,读取文件并将内容存储为矩阵(PYTHON、Visual Studio),python,visual-studio,Python,Visual Studio,我有一个N行M列的文件。我想使用命令行(python)指定文件,然后将其内容以[0,0,0]、[0,0,0]的形式存储到矩阵中 到目前为止,我有这个,但当我通过终端运行时,它并没有要求文本文件 import sys def read_data(filename): with open(filename, 'r') as f: data = [[int(num) for num in line.split(',')] for line in f] return d

我有一个N行M列的文件。我想使用命令行(python)指定文件,然后将其内容以[0,0,0]、[0,0,0]的形式存储到矩阵中

到目前为止,我有这个,但当我通过终端运行时,它并没有要求文本文件

import sys

def read_data(filename):
    with open(filename, 'r') as f:
        data = [[int(num) for num in line.split(',')] for line in f]
    return data

def main():
    if len(sys.argv) < 2:
        print("Usage: {0} <Data Points>".format(sys.argv[0]))
        sys.exit(1)

    file1 = sys.argv[1]

    data_points = read_data(file1)
    print(data_points)
导入系统 def read_数据(文件名): 将open(filename,'r')作为f: 数据=[[int(num)表示第行中的num。拆分(',')]表示第f行] 返回数据 def main(): 如果len(系统argv)<2: 打印(“用法:{0}”。格式(sys.argv[0])) 系统出口(1) file1=sys.argv[1] 数据点=读取数据(文件1) 打印(数据点)
调用程序时,应将文件路径作为参数传递

python script.py/myfile


或者您的
script.py
文件需要的任何参数。

您的脚本不调用
main()
函数。我们定义了
main()。我在脚本底部添加了对
main()
函数的调用

import sys

def read_data(filename):
    with open(filename, 'r') as f:
        data = [[int(num) for num in line.split(',')] for line in f]
    return data

def main():
    if len(sys.argv) < 2:
        print("Usage: {0} <Data Points>".format(sys.argv[0]))
        sys.exit(1)

    file1 = sys.argv[1]

    data_points = read_data(file1)
    print(data_points)

main()
导入系统 def read_数据(文件名): 将open(filename,'r')作为f: 数据=[[int(num)表示第行中的num。拆分(',')]表示第f行] 返回数据 def main(): 如果len(系统argv)<2: 打印(“用法:{0}”。格式(sys.argv[0])) 系统出口(1) file1=sys.argv[1] 数据点=读取数据(文件1) 打印(数据点) main()
运行脚本时,您将希望在命令行上使用与以下类似的命令运行脚本:

$python3 myscript.py mydata.csv

其中:

  • myscript.py
    是脚本的名称
  • mydata.csv
    是数据文件的名称