python中获取文件路径的几种方式
# 如果执行文件为E:\aa\bb\aa.py
1.获取当前路径
current_path11 = os.path.abspath(__file__)
current_path12 = os.path.realpath(__file__)
# 说明:以上2种方式返回结果一样,均为E:\aa\bb\aa.py
2.获取父路径
pra_path11 = os.path.abspath(os.curdir)
pra_path12 = os.path.dirname(os.path.abspath(__file__))
说明:1.返回结果为E:\aa\bb
2.区别:pra_path11返回的是执行文件所在文件夹,如果其他文件调用aa.py,则返回其他文件的父路径。
例如文件E:\aa\cc.py调用aa.py,则返回E:\aa
pra_path12返回的是aa.py文件所在文件夹,不管谁调用返回均为E:\aa\bb
3.获取父路径的父路径
pra_path2 = os.path.dirname(pra_path12)
返回结果为E:\aa
4.路径连接
方式一,直接用“+”:new_path = pra_path2 + "\\report\\" + "config.ini"
方式二,用join: new_path = os.path.join(pra_path2,‘report’,'config.ini')
#新路径E:\aa\report\config.ini
5.创建路径
if not os.path.exists(new_path):
os.makedirs(new_path)

python中获取文件路径的几种方式的更多相关文章
- java中获取文件路径的几种方式
http://xyzroundo.iteye.com/blog/1116159关于绝对路径和相对路径: 绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz es ...
- java项目中获取文件路径的几种方法
// 第一种: 2 File f = new File(this.getClass().getResource("/").getPath()); // 结果: /Users/adm ...
- python中简单文件的输入三种方式
最近在自学python,简单的总结了一下文件的输入的方式. 1. f=open("foo.txt") line=f.readline() while line: print(lin ...
- 从request中获取文件流的两种方式,配置文件上传大小
原文地址:https://blog.csdn.net/xyr05288/article/details/80692132
- Java中获取文件路径
Java中获取文件路径 1.实例说明 (1)得到 ClassPath的绝对URI路径 Thread.currentThread().getContextClassLoader().getResourc ...
- Android中获取文件路径的方法总结及对照
最近在写文件存贮,Android中获取文件路径的方法比较多,所以自己也很混乱.找了好几篇博客,发现了以下的路径归纳,记录一下,以备不时之需 Environment.getDataDirectory() ...
- strus2中获取表单数据 两种方式 属性驱动 和模型驱动
strus2中获取表单数据 两种方式 属性驱动 和模型驱动 属性驱动 /** * 当前请求的action在栈顶,ss是栈顶的元素,所以可以利用setValue方法赋值 * 如果一个属性在对象栈,在页面 ...
- Android中访问sdcard路径的几种方式
以前的Android(4.1之前的版本)中,SDcard路径通过"/sdcard"或者"/mnt/sdcard"来表示,而在JellyBean(安卓4.1)系统 ...
- Java读取resource文件/路径的几种方式
方式一: String fileName = this.getClass().getClassLoader().getResource("文件名").getPath();//获取文 ...
随机推荐
- tensorflow2.0学习笔记第二章第四节
2.4损失函数损失函数(loss):预测值(y)与已知答案(y_)的差距 nn优化目标:loss最小->-mse -自定义 -ce(cross entropy)均方误差mse:MSE(y_,y) ...
- 带你轻松了解C# Lock 关键字
相信绝大多数.NET玩家和我一样,常常使用Timer这个对象,而在WPF中使用DispatcherTimer的人也是很多,DispatcherTimer是在UI线程跑的.我们的程序中大多数都会充斥很多 ...
- vue无法选择上传相同文件
使用h5自带的input type=file时,使用change触发上传事件 <input class="exportss" type="file" id ...
- 这才是Android设置界面的正确做法👌👌👌
话不多说,先上效果图 本文参考简书博客:<这才是Android设置界面的正确做法>一文写成,在其基础上删改并增加了一些内容.建议新窗口打开原文,在本文讲述不清楚的地方参考原文去寻找答案. ...
- (十)深入理解maven构建生命周期和各种plugin插件
链接:https://blog.csdn.net/zhaojianting/article/details/80321488
- mysql关于group by的用法
原文:https://blog.csdn.net/u014717572/article/details/80687042 先来看下表1,表名为test: 表1 执行如下SQL语句: SELECT na ...
- python基础--程序交互、格式化输出、流程控制、break、continue
在此申明一下,博客参照了https://www.cnblogs.com/jin-xin/,自己做了部分的改动 (1) 程序交互 #!/usr/bin/env python # -*- coding: ...
- Redis源码阅读一:简单动态字符串SDS
源码阅读基于Redis4.0.9 SDS介绍 redis 127.0.0.1:6379> SET dbname redis OK redis 127.0.0.1:6379> GET dbn ...
- 01 . ELK Stack简介原理及部署应用
简介 ELK并不是一款软件,是一整套解决方案,是由ElasticSearch,Logstash和Kibana三个开源工具组成:通常是配合使用,而且先后归于Elastic.co公司名下,简称ELK协议栈 ...
- 什么了解suite集合实现
Testsuite继承BaseTestSuite其实内部的东西不是太多--生成suite集合的逻辑主要如下-我这里没有扒源码-因为他最终生成的TestsSuite关联的模块比较多--如果贴源码出来-- ...