1 python windows validation command-line-arguments python-2.7
我正在用Python编写脚本.用户必须输入要运行的脚本的文件夹.有一些复制和移动文件,在某一点上将删除一个文件夹.因此,在任何情况下我都不希望在根文件夹上运行此脚本.(或该事项的当前或父母)
所以我需要验证这一点.但是我如何做到这一点,因为"/""./""."".."等..作为输入都是完全有效的和使用os.path.isdir()的现有文件夹.
我应该手动检查这些系统文件夹符号的输入.或者是否有更好的方法(可能是现有的函数?)来检查输入是否是真实的现有文件夹,而不是系统或符号文件夹,如(root,current,parent等)
您希望通过使其成为绝对路径来规范化您的路径.您可能还想删除符号链接:
import os.path
normalized = os.path.realpath(os.path.absolute(path))
if normalized == '/':
raise ValueError("Can't use root as a destination")
Run Code Online (Sandbox Code Playgroud)
使路径绝对消除任何当前或父路径引用,以及任何加倍的分隔符.
| 归档时间: |
|
| 查看次数: |
59 次 |
| 最近记录: |