os.path.join 用法
写在前面的话:看大家阅读量这么大,也应该在放点干货来了~~ 获取层级路径,直到可以获取文件夹下面的文件,多一个判断就行了:
level1_list = [os.path.join(base_path, f) for f in listdir(base_path) if os.path.isdir(os.path.join(base_path, f))]
结合路径:
原来的目录层级:c:/a/b/c/test.py
print os.path.abspath("%s" % __file__)
==> c:/a/b/c/test.py
print os.path.abspath("%s/../../" % __file__) #绝对路径,相比下个路径实现方式需要多跳出一次,坑。。。,不建议用
==> c:/a/b
print '-----'
file_path = os.path.split(os.path.realpath(__file__))[0] #建议使用
print file_path
==> c:/a/b/c/
print os.path.abspath("%s/../" % __file__)
此处跳到:c:/a/b/c
kaggle-word2vec-ipynb >>> import os >>> datafile = os.path.join('/kaggle-word2vec-ipynb','/data/', 'labeledTrainData.tsv') >>> print datafile /data/labeledTrainData.tsv >>> datafile = os.path.join('kaggle-word2vec-ipynb','/data/', 'labeledTrainData.tsv') >>> print datafile /data/labeledTrainData.tsv #想要的路径 >>> datafile = os.path.join('./kaggle-word2vec-ipynb/','data/', 'labeledTrainData.tsv') >>> print datafile ./kaggle-word2vec-ipynb/data/labeledTrainData.tsv #"/"出现在第一个,所以可以追踪合并到第一个 >>> datafile = os.path.join('/kaggle-word2vec-ipynb/','data/', 'labeledTrainData.tsv') >>> print datafile /kaggle-word2vec-ipynb/data/labeledTrainData.tsv #"/"出现在第二个,所以从第二个开始,以下类推 >>> datafile = os.path.join('/kaggle-word2vec-ipynb','/data', 'labeledTrainData.tsv') >>> print datafile /data/labeledTrainData.tsv >>> datafile = os.path.join('/kaggle-word2vec-ipynb','/data', '/labeledTrainData.tsv') >>> print datafile /labeledTrainData.tsv >>> datafile = os.path.join('/kaggle-word2vec-ipynb','./data', '/labeledTrainData.tsv') >>> print datafile /labeledTrainData.tsv >>> datafile = os.path.join('/kaggle-word2vec-ipynb','data/', '/labeledTrainData.tsv') >>> print datafile /labeledTrainData.tsv >>> datafile = os.path.join('kaggle-word2vec-ipynb','data', 'labeledTrainData.tsv') >>> print datafile kaggle-word2vec-ipynb/data/labeledTrainData.tsv #想要的路径 自动添加'/' >>> datafile = os.path.join('.','kaggle-word2vec-ipynb','data', 'labeledTrainData.tsv') >>> print datafile ./kaggle-word2vec-ipynb/data/labeledTrainData.tsv
总结:所以要么不加 './' 或者"/",要么中间的路径不能出现'/'开头,合并路径感觉是检查了根目录'/'的位置.
还是让自动加上'/'就行
os.path.join 用法的更多相关文章
- Python3 join函数和os.path.join用法
Python3 join函数和os.path.join用法 os.path.join()连接两个文件名地址的时候,就比os.path.join("D:\","test. ...
- Python中join函数和os.path.join用法
Python中有join和os.path.join()两个函数,具体作用如下: join:连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 os.path.jo ...
- os.path.join用法
os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含’/’,则函数会自动加上 2.如果有一个组件是一个绝对路径,则在它之前的所有组件均会被舍弃 3.如果最后一个组 ...
- python中 OS模块中 os.path.join() 函数用法简介
基础用法 os.path.join() 用于拼接文件的路径,可以传入多个待拼接的路径 若各个路径之间不存在 " / ", 则其会自动为各个路径之间增加连接符 " / &q ...
- join()与os.path.join()的用法
join:连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 os.path.join(): 将多个路径组合后返回 一.函数说明 1.join()函数 语法:‘ ...
- os.path.join()函数的用法
转:https://blog.csdn.net/hduxiejun/article/details/80289476 os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名 ...
- python路径拼接os.path.join()函数的用法
os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含’/’,则函数会自动加上 2.如果有一个组件是一个绝对路径,则在它之前的所有组件均会被舍弃 3.如果最后一个组 ...
- join和os.path.join 的用法
Python中有join和os.path.join()两个函数,具体作用如下: join:连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串os.path.joi ...
- os.path.join 的用法
Python中有join和os.path.join()两个函数,具体作用如下: join:连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串os.path.joi ...
随机推荐
- PHPStorm默认在新窗口打开
这个设置很实用.
- PHP获取固定概率
public static function getFixRand($weight) { if ((int)$weight < 0 || (int)$weight > 100) { ret ...
- MongoDB(课时9 范围运算)
3.2.2.4 范围查询 只要是数据库,必须存在有“$in”(在范围之中).“$nin”(不在范围之中). 范例:查询姓名是“张三”,“李四”,“王五” db.students.find({" ...
- 《剑指offer》第三十二题(分行从上到下打印二叉树)
// 面试题32(二):分行从上到下打印二叉树 // 题目:从上到下按层打印二叉树,同一层的结点按从左到右的顺序打印,每一层 // 打印到一行. #include <cstdio> #in ...
- Unity游戏中关于伤害范围的计算
1.纯数学计算 范围计算 + 方向计算: 先将不在伤害范围的敌人排除掉,再计算处于伤害范围并且角度正确的敌人. 以上的计算是以人物的中心来计算的, 所以这中方式就有些局限性了,比如:一个四足怪物,只有 ...
- smarty课程---smarty3的安装和使用
smarty课程---smarty3的安装和使用 一.总结 一句话总结:smarty 是什么,就不多说了,用过php,接触过php的人都对smarty 再熟悉不过了.它是一个很强大的代码分离软件,作为 ...
- 一分钟搞定:spring boot 热部署 (基于Idea)
什么是热部署? 对于spring boot项目,修改后台的java类,不要重启整个项目,就可以测试/使用刚修改的功能! 怎么为项目添加/设置热部署 maven项目在pom.xml添加下方代码,联网引入 ...
- 只能输入float
if (((int)e.KeyChar < 48 || (int)e.KeyChar > 57) && (int)e.KeyChar != 8 && (in ...
- English trip -- VC(情景课)9 A Get ready
She is doing homwork He is doing laundry He is drying the dishes She is making lunch She is making t ...
- Memory and Casinos CodeForces - 712E (概率,线段树)
题目链接 题目大意:$n$个点, 每个点$i$有成功率$p_i$, 若成功走到$i+1$, 否则走到走到$i-1$, 多组询问, 求从$l$出发, 在$l$处不失败, 最后在$r$处胜利的概率 设$L ...