Python之使用argparse在命令行读取文件

关于argparse之parser.add_argument()的用法,这篇文章有较为详细的讲解。因为作业需要,我需要在命令行读入txt文件,网上看了不少博客,都没有直接介绍,而小白在自己尝试的过程中踩了不少坑,尽管做法很简单。这里记在这里。

1.在Python的shell中写一个 ArgparseTry.py 文件,其中的代码如下:

import argparse

def readfile(path):
    with open(path,'r',encoding='utf-8-sig') as f:
        content=f.readlines()
        f.close()   
    return content

parser = argparse.ArgumentParser(description='ArgparseTry')
parser.add_argument('--path',required=True,type=str)
args = parser.parse_args()
content=readfile(path=args.path)
print(content)

2.在命令行运行ArgparseTry.py文件,需要传入readfile()函数的参数,即所需要读取的文件路径。

在本实验中,需要读取的文件 TryRead.txt 和 ArgparseTry.py 放在同一个文件夹下,如下图所示
Python之使用argparse在命令行读取文件_第1张图片
TryRead.txt文件中的内容如下:
Python之使用argparse在命令行读取文件_第2张图片

其实做法很简单:
(1)cd 文件夹路径:进入到该文件夹
(2)python ArgparseTry.py 参数:运行ArgparseTry.py文件,并传入相关参数。

因为这里所需要传入的参数是路径名,属于字符串类型,所以我想当然地将其放在引号中,结果报错:
Python之使用argparse在命令行读取文件_第3张图片
这里我带引号尝试了3次,结果均报错,最后去掉引号,成功读出来文件中的内容:
在这里插入图片描述
而且从图中可以发现,传入的路径参数使用相对路径或绝对路径都是可以的。

你可能感兴趣的:(自然语言处理,python,tensorflow)