python 检查一个字符串路径(该路径实际不存在) 是文件路径还是文件夹路径
  X5zJxoD00Cah 2023年11月19日 37 0
import os

def guess_path_type(path):
    base_name = os.path.basename(path)
    if '.' in base_name:
        return "Probably a file path"
    else:
        return "Probably a directory path"

# 测试
print(guess_path_type('/path/to/directory'))  # 将打印 "Probably a directory path"
print(guess_path_type('/path/to/file.txt'))  # 将打印 "Probably a file path"

在 Python 中,如果一个路径实际上不存在,那么我们无法直接通过 os.path 模块的 isfile() 或 isdir() 函数来判断这个路径是文件路径还是文件夹路径,因为这两个函数都会返回 False

然而,你可以通过检查路径字符串的最后一部分是否包含一个扩展名来猜测它可能是一个文件路径。这种方法并不完全准确,因为有些文件可能没有扩展名,而有些目录的名字可能包含.


解决

def check_path(path=path_folder):
    extension = os.path.splitext(path)[1]
    # 如果不存在(不可使用isfile, isdir)
    if not os.path.exists(path):
        # 如果是文件夹
        if extension == "":
            print(path, "is a directory")
            os.mkdir(path)
            print(path, "has been created")
        # 如果是文件
        else:
            print(path, "is a file")
            # w 清空并重写; write 不能为空
            # 如果父级目录不存在,则报错
            try:
                with open(path, "w") as f:
                    f.write("")
            except:
                print("cannot create the file", path)
    else:
        print(path, "is already exist")
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月19日 0

暂无评论

推荐阅读
  zLxnEsMLk4BL   2023年11月19日   34   0   0 变量名字符串bclinux
  X5zJxoD00Cah   2023年11月30日   39   0   0 GroupEmail字符串
  gBkHYLY8jvYd   2023年11月19日   28   0   0 输出格式进制字符串
X5zJxoD00Cah