2
argparseを使ってコマンドライン引数からファイルパスを読みたいと思います。パスが相対パスか(ファイルが現在のディレクトリにあるか)完全パスが指定されているかどうかをチェックする最適な方法はありますか? (入力をチェックし、パスが存在しない場合はファイル名にカレントディレクトリを追加すること以外。)Pythonのコマンドライン引数からファイルパスを取得する
argparseを使ってコマンドライン引数からファイルパスを読みたいと思います。パスが相対パスか(ファイルが現在のディレクトリにあるか)完全パスが指定されているかどうかをチェックする最適な方法はありますか? (入力をチェックし、パスが存在しない場合はファイル名にカレントディレクトリを追加すること以外。)Pythonのコマンドライン引数からファイルパスを取得する
表示名がsys.argv
とともにos.path.isabs
はおそらく最善である、言ったように:
import sys
import os
fpath = sys.argv[-1]
print(os.path.isabs(fpath))
print(fpath)
は出力
>>>
True
C:\Users\310176421\Desktop\Python\print.py
>>>
いくつかのCMDもの
C:\Users\310176421\Desktop\Python>python print.py C:\Users\310176421\Desktop\tes
t.txt
True
C:\Users\310176421\Desktop\test.txt
C:\Users\310176421\Desktop\Python>python print.py whatever
False
whatever
あなたは([ 'os.path.isabs']を使用することができますhttps://docs.python.org/3/library/os.path.html#os.path.isabs)。 –
これは私のために働く、ありがとう@DisplayName –