zoukankan      html  css  js  c++  java
  • python 路径相关

    转自https://blog.csdn.net/databatman/article/details/49453953

    下面的路径介绍针对windows,其他平台的暂时不是很了解。

    在编写的py文件中打开文件的时候经常见到下面其中路径的表达方式:

    open('aaa.txt')  
    open('/data/bbb.txt')  
    open('D:\user\ccc.txt')  

    这三种表达式里面,前两个都是相对路径,第三个则是绝对路径。绝对路径比较好理解,就是最完整的路径,相对路径的相对则是不完整路径,这个相对指的就是相对于当前文件夹路径,其实就是你编写的这个py文件所放的文件夹路径!也就是说你写的相对路径必须是当前文件夹A里的文件a或者A里的文件夹B里的文件才可以open。

    假设当前的py文件夹所处的位置是:D:userpublic

    那么三行代码打开的文件所属的路径分别是:

    D:userpublicaaa.txt

    D:userpublicdatabb.txt

    D:userprivateccc.txt

    很好理解就是当要打开py文件所处的文件时只要使用相对路径就行了,而要使用其他文件夹的则需使用绝对路径。

    注:我们常用’/‘来表示相对路径,’‘来表示绝对路径,上面的路径里\是转义的意思。此外,网页网址和linux、unix系统下一般都用’/‘。

    当然我们也可以获得当前文件夹的绝对路径,如下

    import os  
    path1=os.path.abspath('.')   #表示当前所处的文件夹的绝对路径  
    path2=os.path.abspath('..')  #表示当前所处的文件夹上一级文件夹的绝对路径  

    所以我们常设置一个path1的全局变量来表示当前的绝对路径,再加上相对路径来打开需要打开的文件,这么做是为了在不同的平台上不冲突,因为不同平台在相对路径上的表示上存在区别。

     

    2、python获取当前目录路径和上级路径

     https://blog.csdn.net/leorx01/article/details/71141643

    import os
    
    print '***获取当前目录***'
    print os.getcwd()
    print os.path.abspath(os.path.dirname(__file__))
    
    print '***获取上级目录***'
    print os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
    print os.path.abspath(os.path.dirname(os.getcwd()))
    print os.path.abspath(os.path.join(os.getcwd(), ".."))
    
    print '***获取上上级目录***'
    print os.path.abspath(os.path.join(os.getcwd(), "../.."))
    #
    '../../project/toyexample/data/university_train.txt' #也表示上上级目录

    #输出 ***获取当前目录*** /workspace/demo/folder/test /workspace/demo/folder/test ***获取上级目录*** /workspace/demo/folder /workspace/demo/folder /workspace/demo/folder ***获取上上级目录*** /workspace/demo
  • 相关阅读:
    Lambda表达式详解
    MassTransit RabbitMQ 参考文档
    RabbitMQ
    LeetCode专题-Python实现之第26题:Remove Duplicates from Sorted Array
    LeetCode专题-Python实现之第21题:Merge Two Sorted Lists
    LeetCode专题-Python实现之第20题:Valid Parentheses
    LeetCode专题-Python实现之第9题:Palindrome Number
    LeetCode专题-Python实现之第14题:Longest Common Prefix
    LeetCode专题-Python实现之第13题:Roman to Integer
    LeetCode专题-Python实现之第7题:Reverse Integer
  • 原文地址:https://www.cnblogs.com/ying-chease/p/8656509.html
Copyright © 2011-2022 走看看