在终端中运行时出现这样的错误
filename = open(input(), 'rb')
input_file = filename
open(args.input_file, "rb").read()
这是输出
File "<stdin>", line 1, in <module> TypeError: expected str, bytes or os.PathLike object, not NoneType```
This is also there in script
parser = argparse.ArgumentParser();
parser.add_argument("-i", dest="input_file", help="no file with this name")
args = parser.parse_args();```
The path i put is /storage/emulated/0/filrname.txt
答案 0 :(得分:1)
filename = open(input(), 'rb')
这将打开您在终端中输入的文件名,并返回一个file
对象,filename
对象不是文件名。
open(args.input_file, "rb").read()
您提供的脚本中未定义 args
。即使设置为args.input
,也可能未设置。这可能会导致TypeError
。
我假设您正在尝试打开用户输入的文件,您可以这样做:
filename = input()
with open(filename, 'rb') as f:
data = f.read()