大牛们应该对路径都很了解了,这篇文章主要给像我这样的入门小白普及常识用的,啊哈

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

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

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

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

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

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

D:\user\public\aaa.txt

D:\user\public\data\bbb.txt

D:\user\private\ccc.txt

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

注:我们常用’/‘来表示相对路径,’\‘来表示绝对路径,上面的路径里\\是转义的意思(3也可以写成open(r'D:\user\ccc.txt'),r表示转义),不懂的自行百度。

此外,网页网址和Linux、unix系统下一般都用’/‘

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

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

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

以上。

Python中的绝对路径和相对路径的更多相关文章

  1. 在Python中使用glob模块查找文件路径的方法

    在Python中使用glob模块查找文件路径的方法 glob模块是最简单的模块之一,内容非常少.用它可以查找符合特定规则的文件路径名.跟使用windows下的文件搜索差不多.查找文件只用到三个匹配符: ...

  2. Python中import机制

    Python语言中import的使用很简单,直接使用import module_name语句导入即可.这里我主要写一下"import"的本质. Python官方定义:Python ...

  3. python中自定义模块的引用

    在python中,实现能够在任何路径下都可以直接import,就必须将存放函数或类的文件添加到python的搜索路径. 其实很简单,主要步骤就是: import sys sys.path.append ...

  4. 关于python中模块的import路径

    前两天被一个同事问了一个python的问题: 为什么一个目录里的python文件引用不要另一个兄弟目录的python文件,但是这两个目录的父母录运行时是可以引用到了.当时感觉一直是模块和包的机制问题, ...

  5. python中读取文件数据时要注意文件路径

    我们在用python进行数据处理时往往需要将文件中的数据取出来做一些处理,这时我们应该注意数据文件的路径.文件路径不对,回报如下错误: FileNotFoundError: File b'..Adve ...

  6. Python中路径操作

    目录 1. os.path模块 2. pathlib模块 2.1 目录操作 2.2 文件操作 3. shutil模块 3.1 os模块 3.2 shutil模块 1. os.path模块 3.4版本之 ...

  7. Python中的两种路径

    Java中有两种路径,一种是操作系统的路径path,另一种是类路径classpath. Python中也是如此,一种是操作系统环境变量中的path,另一种是PYTHONPATH. 当import xx ...

  8. python中的模块及路径(2)

    如果我们要添加自己的搜索目录,有两种方法: 一是直接修改sys.path,添加要搜索的目录: >>> import sys >>> sys.path.append( ...

  9. Python中的相对文件路径的调用

    先让我们来看看一个用到相对文件路径的函数调用的问题.假设现在有两个脚本文件main.py和func.py,他们的路径关系是: . |--dir1 |--main.py |--dir2 |--func. ...

  10. python 中open文件路径的选择

    一.问题描述 python 中使用open打开某个文件写入时,往往会发现需要写入的文件不在同级目录下.这样就需要根据文件的路径来找到并打开. 但往往有时绝对路径和相对路径,写入不正确就会打开失败. 二 ...

随机推荐

  1. Elasticsearch的前后台运行与停止(rpm包方式)

    对应,这es的下载,需要rpm包. Elasticsearch-2.4.3的下载(图文详解) 建议用root用户 [root@djt002 elasticsearch-2.4.3]$ pwd/usr/ ...

  2. 在VMWare上安装ubuntu及VMWare&nbs…

    在VMWare上安装ubuntu及VMWare Tools 一.摘要 该文主要介绍了如何在虚拟机上安装ubuntu,和安装VMWare Tools设置共享文件夹,最后对ubuntu做了简单的介绍. 二 ...

  3. 《精通Spring4.X企业应用开发实战》读后感第五章(装配Bean,依赖注入)

  4. django根据不同app配置相应的log文件

    django根据不同app配置相应的log文件 settings.py # django logging LOG_PATH = "/var/log/blog/" LOGGING = ...

  5. 判断ip地址是否为内网ip或局域网ip

    bool IsLanIp(string& ip) { ,) == ,) == ,) == "192.") { return true; } else { return fa ...

  6. [poj]1050 To the Max dp

    Description Given a two-dimensional array of positive and negative integers, a sub-rectangle is any ...

  7. 删除childNodes获取的文本节点

    function del_ff(elem) { var elem_child = elem.childNodes; for (var i = 0; i < elem_child.length; ...

  8. c#封装dll

    https://www.cnblogs.com/xingboy/p/10287425.html

  9. json 打印

    JsonObject jsonObj = new JSONObject(); jsonObj.put("success",true); jsonObj.put("msg& ...

  10. java五行代码导出Excel

    目录 先看代码 再看效果 EasyExcel 附: Java按模板导出Excel---基于Aspose实现 Java无模板导出Excel,Apache-POI插件实现 已经写过两种Excel导出插件了 ...