9

我用来argparse从用户那里获取文件:

import argparse, os
parser = argparse.ArgumentParser()
parser.add_argument('file', type=file)
args = parser.parse_args()

然后我想知道这个文件所在的目录,比如:

print(os.path.abspath(os.path.dirname(args.inputfile)))

但是,当然,作为args.inputfile一个file对象,这是行不通的。怎么做?

4

1 回答 1

13

您可以从.name属性中获取文件的名称,然后将其传递给os.path.abspath. 例如:

args = parser.parse_args()
path = os.path.abspath(args.file.name)
于 2012-05-07T16:36:16.550 回答