24

コマンドライン引数からファイルを渡し、ファイルも抽出する場合、ファイルパスを取得する方法を教えてもらえますか。ファイルが特定のディレクトリに存在するかどうかも確認する必要がある場合

python.py /home/abhishek/test.txt

ファイルパスを取得し、test.txt が abhishek フォルダーに存在することを確認します。

私はそれが非常に簡単かもしれないことを知っていますが、私はpythoに少し慣れていません

4

4 に答える 4

30
import os
import sys

fn = sys.argv[1]
if os.path.exists(fn):
    print os.path.basename(fn)
    # file exists
于 2013-01-16T14:15:33.037 に答える
13

Python 3.4 以降では、 argparseをpathlibと一緒に使用できます。

import argparse
from pathlib import Path

parser = argparse.ArgumentParser()
parser.add_argument("file_path", type=Path)

p = parser.parse_args()
print(p.file_path, type(p.file_path), p.file_path.exists())
于 2019-05-23T09:00:42.040 に答える
4

これを使って:

import sys
import os

path = sys.argv[1]

# Check if path exits
if os.path.exists(path):
    print "File exist"

# Get filename
print "filename : " + path.split("/")[-1]
于 2013-01-16T14:17:22.817 に答える