zoukankan      html  css  js  c++  java
  • python os.path.dirname() abspath()

    测试文件的名称

    path_test.py

    先确定文件目录

    (my_flask3) python@ubuntu:~/Desktop/flask_news_pro$ python path_test.py 
    

    实验运行代码和结果(所有测试在Ubuntu16.04,pycharm2016中运行)

    import os
    file_path = os.path.abspath(__file__)  # 返回的是完整的路径(有文件名)
    file_abspath = os.path.dirname(__file__)  # 返回的是命令行中的路径(没有文件名)
    print(file_path)
    print(file_abspath)
    print(__file__)  
    # /home/python/Desktop/flask_news_pro/path_test.py 直接运行
    # /home/python/Desktop/flask_news_pro
    # /home/python/Desktop/flask_news_pro/path_test.py
    
    # (my_flask3) python@ubuntu:~/Desktop/flask_news_pro$ python path_test.py   命令运行 没有路径
    # /home/python/Desktop/flask_news_pro/path_test.py
    #
    #path_test.py
    
    
    # (my_flask3) python@ubuntu:~/Desktop$ python flask_news_pro/path_test.py   命令运行,加路径
    # /home/python/Desktop/flask_news_pro/path_test.py
    # flask_news_pro
    # flask_news_pro/path_test.py
    
    
    
    file_abspath = os.path.dirname(os.path.abspath(__file__))
    file_path = os.path.abspath(os.path.dirname(__file__))
    
    print(file_abspath)
    print(file_path)
    
    
    # /home/python/Desktop/flask_news_pro   命令运行 没有路径
    # /home/python/Desktop/flask_news_pro
    
    # /home/python/Desktop/flask_news_pro   直接运行
    # /home/python/Desktop/flask_news_pro
    
    # /home/python/Desktop/flask_news_pro   命令运行,加路径
    # /home/python/Desktop/flask_news_pro
    

    实例:

    def setup_log(config_name):
        """配置日志"""
        dir_file = os.path.abspath(__file__)
        dir_info = os.path.dirname(dir_file) # 返回上一级目录
        dir_base = os.path.dirname(dir_info)
        dir_log = os.path.join(dir_base, 'logs/log')
        print(dir_file)
        print(dir_info)
        print(dir_base)
        print(dir_log)
    

      

    /home/python/Desktop/flask_news_pro/xjzx/info/__init__.py
    /home/python/Desktop/flask_news_pro/xjzx/info
    /home/python/Desktop/flask_news_pro/xjzx
    /home/python/Desktop/flask_news_pro/xjzx/logs/log
    

      

  • 相关阅读:
    ReverseFind的用法 ; 查找字符中最后一个字符
    sprintf_s() 、sprintf()和printf()区别和用法
    CString/string 区别及其转化
    CC++中strcat()函数
    C++中cstring.h和string.h的区别
    vs中CString的用法,以及所需的头文件
    头文件afx.h作用
    sprintf_s函数用法
    C++ format 函数
    C/C++ typedef用法
  • 原文地址:https://www.cnblogs.com/serpent/p/9637573.html
Copyright © 2011-2022 走看看