下面测试需 import os。

1、相同点

1.1、两者都是返回绝对路径,如果参数path为空,则返回当前文件所在目录的绝对路径。

当前py文件所在的目录是:

print(os.path.abspath(""))
print(os.path.realpath(""))

运行结果:

E:\demo
E:\demo

1.2、如果给一个不存在的文件名作为相对路径的path,会将当前所在目录和文件名拼接起来,返回拼接后的绝对路径。

当前目录下并无"test.txt",这个文件是不存在的。

print(os.path.abspath("test.txt"))
print(os.path.realpath("test.txt"))

运行结果:

E:\demo\test.txt
E:\demo\test.txt

2、不同点

2.1、内置变量__file__的不同

print("rel:", os.path.relpath(__file__)) # 返回相对路径
print("abs:", os.path.abspath(__file__)) # 返回绝对路径

结果:

rel: test.py
abs: E:\demo\test.py

注意:而且对os.path.relpath(os.path.relpath(__file__))再次执行,返回仍为相对路径!

2.2、对于linux中的软链接行为不同

os.path.abspath()返回绝对路径,但不处理符号链接;

os.path.realpath()先处理路径中的符号链接,再返回绝对路径。

$ ls -l
-rw-rw-r-- 1 guest guest 0 Jun 16 08:36 a
lrwxrwxrwx 1 guest guest 1 Jun 16 08:36 b -> a

测试代码:

from os.path import abspath, realpathabspath('b')
'home/guest/play/paths/b'realpath('b')
'/home/guest/play/paths/a'

python os.path.abspath()与os.path.realpath()区别相关推荐

  1. os.path.abspath和os.path.realpath区别

    Python在使用os包的过程中,经常遇到返回wen文件路径的方法,那os.path.abspath()和os.path.realpath()的区别是什么呢,有时候傻傻分不清楚,现在我们就来用实例来说 ...

  2. Python·os.path.abspath和os.path.realpath区别

    功能区别 1.os.path.abspath() 返回一个目录的绝对路径(Return an absolute path.) >>> os.path.abspath("/e ...

  3. os.path.abspath与os.path.realpath 区别

    os.path.realpath 返回的是使用软链的真实地址 os.path.abspath 返回目标地址 创建a.txt: touch a.txt 创建a.txt的软连接: ln -s  a.txt ...

  4. os.path.abspath() 和 os.path.realpath() 区别

    相同点 都能返回文件的绝对路径. >>> import os>>> os.path.realpath(__file__) f:\work\tmp\test.py&g ...

  5. python3文件路径操作常用方法带示例详解(os.path模块,os.listdir,os.walk,os.scandir方法等)(不定期更新整理中)

    python文件路径操作常用方法 前言(文件路径的基本知识) 1.路径的获取和转换 获取当前.py脚本文件的路径 获取绝对路径 路径的规则化 2.路径的判断 判断路径是否存在 判断路径是否为文件 判断 ...

  6. python getostime_python中sys,os,time模块的使用(包括时间格式的各种转换)

    sys模块 sys.argv: 实现从程序外部向程序传递参数. 位置参数argv[0]代表py文件本身,运行方法 python xx.py 参数1,参数2 .. self = sys.argv[0] ...

  7. python基础: os.path.realpath()、os.path.getcwd()、 os.path.abspath() 的区别

    目录 前言 一.realpath.getcwd.abspath各是干嘛的? 二.常用应用场景 前言 在写代码过程中,经常会遇到 realpath.getcwd.abspath.但是对于他们的区别就傻傻 ...

  8. pyinstaller打包前后os.path.abspath(__file__)和os.path.realpath(sys.executable)的区别

    在pycharm中运行和生成exe之后os.path.dirname(__file__)返回的位置不一样. 使用pycharm和直接点击运行py文件,这个路径均为脚本的所在路径, 运行pyinstal ...

  9. Python的 sys.path.append()、os.path.dirname(os.path.abspath(file))、使用os模块动态获取目录或文件路径

    sys.path.append() 当我们导入一个模块时:import  xxx,默认情况下python解析器会搜索当前目录.已安装的内置模块和第三方模块,搜索路径存放在sys模块的path中: &g ...

最新文章

  1. SAMBA服务器应用
  2. 5G NR — 基站的扇区、小区、跟踪区、注册区、服务区
  3. linux命令head
  4. 获取Domain中Value Range值和描述文本的方法
  5. squid代理服务器详解
  6. houseparty不流畅_重新设计Houseparty –用户体验案例研究
  7. “远程桌面己停止工作”的解决方法
  8. 制作U盘启动的并可保持更改更新和设置的BT4最终版完全手册
  9. jsp- el表达式
  10. 【Python实例第34讲】高斯过程分类:XOR数据集
  11. Java高并发程序设计学习笔记(十):并发调试和JDK8新特性
  12. makefile中伪目标的理解
  13. 跟我学折纸计算机教案,折纸活动教案
  14. java中计算文件的md5,Java计算文件MD5值代码
  15. 梦幻西游手游海外服务器维护,梦幻西游手游本周维护:蜃影秘境增加40级与70级...
  16. html网页背景图片 菜鸟教程,CSS3 背景
  17. 知识付费消停了,广播剧2019要从小众狂欢走向大众化?
  18. 神圣的QA——写给应届毕业生
  19. 杭州购买油车流程笔记
  20. android淡入淡出动画循环,Android activity动画(淡入淡出)

热门文章

  1. 地域和地方的区别_经济区域和区域经济的区别和联系是什么
  2. Cesium 源码分析 Material
  3. 微信公众号开发之分享接口实现
  4. ML之PDP:基于titanic泰坦尼克是否获救二分类预测数据集利用PDP部分依赖图对RF随机森林实现模型可解释性案例
  5. ML之PDP:机器学习可解释性之部分依赖图(Partial Dependence Plots)之每个特征如何影响您的预测?
  6. 自动驾驶软件开发人才现状_新技术改变传统出行方式 多国自动驾驶行业现状及人才需求分析...
  7. 如何插入文献及交叉引用
  8. pyboard呼吸灯代码分享
  9. 虚拟机配置IP和关闭防火墙
  10. 你拥有的最宝贵的财富是什么?