我尝试使用os模块验证是否存在作为用户输入接收的目录
这就是我接受输入的方式:
directory = input("Hi ! \n please type a directory, thanks !")
我的想法是确保用户输入现有目录而不是其他任何内容
答案 0 :(得分:3)
from pathlib import Path
def is_valid_directory(filename):
p = Path(filename)
return p.exists() and p.is_dir()
pathlib
是一个非常方便的模块,用于处理任何类型的文件路径。 p.exists()
调用是多余的,因为p.is_dir()
会针对不存在的路径返回False
,但检查两者都会允许您进行调用。提供更好的错误信息。
编辑:请注意,在Python 3.4中添加了pathlib
。如果您因任何原因仍在使用旧版本,则可以使用较旧的os.path.isdir(filename)
功能。
答案 1 :(得分:1)