【问题标题】:Python: Check if a directory exists using os modulePython:使用 os 模块检查目录是否存在
【发布时间】:2018-08-06 15:22:42
【问题描述】:
我正在尝试使用 os 模块验证作为用户输入接收的目录是否存在
这就是我接受输入的方式:
directory = input("Hi ! \n please type a directory, thanks !")
这个想法是我想确保用户将键入一个现有目录而不是其他任何东西
【问题讨论】:
标签:
python
python-3.x
validation
input
python-os
【解决方案2】:
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,但是检查两者可以让你例如提供更好的错误信息。
编辑:请注意,pathlib 是在 Python 3.4 中添加的。如果您出于某种原因仍在使用旧版本,则可以使用旧的 os.path.isdir(filename) 函数。