os.path.join()函数用法详解-程序员宅基地

技术标签: python  笔记  

os.path.join()函数用于路径拼接文件路径,可以传入多个路径

如果不存在以‘’/’开始的参数,则函数会自动加上

>>> import os
>>> print(os.path.join('path','abc','yyy'))
path\abc\yyy

 存在以‘’/’’开始的参数,从最后一个以”/”开头的参数开始拼接,之前的参数全部丢弃。

>>> print('1',os.path.join('aaa','/bbb','ccc.txt'))
1 /bbb\ccc.txt

>>> print('1',os.path.join('/aaa','/bbb','ccc.txt'))
1 /bbb\ccc.txt

>>> print('1',os.path.join('/aaa','/bbb','/ccc.txt'))
1 /ccc.txt

>>> print('1',os.path.join('/aaa','bbb','ccc.txt'))
1 /aaa\bbb\ccc.txt

>>> print('1',os.path.join('/aaa','bbb','/ccc.txt'))
1 /ccc.txt

 同时存在以‘’./’与‘’/’’开始的参数,以‘’/’为主,从最后一个以”/”开头的参数开始拼接,之前的参数全部丢弃。

>>> print('2',os.path.join('/aaa','./bbb','ccc.txt'))
2 /aaa\./bbb\ccc.txt

>>> print('2',os.path.join('aaa','./bbb','/ccc.txt'))
2 /ccc.txt

只存在以‘’./’开始的参数,会从”./”开头的参数的上一个参数开始拼接。

>>> print('2',os.path.join('aaa','./bbb','ccc.txt'))
2 aaa\./bbb\ccc.txt

注意:

 path='C:/yyy/yyy_data/'
>>> print(os.path.join(path,'/abc'))
C:/abc
>>> print(os.path.join(path,'abc'))
C:/yyy/yyy_data/abc

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/swan777/article/details/89040802

智能推荐

基于AWS和CDH的大数据处理平台企业级架构的研究_替代cdh大数据平台-程序员宅基地

文章浏览阅读1k次。摘 要 该期刊的目的是研究在企业生产环境下大数据架构的相关技术,包括操作系统配置,Cloudera管理器安装,CDH集群部署和集群参数调优,Kerberos集成,LDAP集成,保护传输中的数据安全和保护静态数据安全.生产环境依赖于AWS云服务。实验内容:CDH集群部署和集群参数调优;企业级身份验证系统kerberos;使用一个轻量级目录访问协议(LDAP)目录管理认证;当启动集群时用TLS/SSL..._替代cdh大数据平台

DedeCMS织梦框架识别_织梦的框架-程序员宅基地

文章浏览阅读280次。DedeCMS框架_织梦的框架

Windows UAC权限详解以及因为权限不对等引发的若干问题分享-程序员宅基地

文章浏览阅读1.3w次,点赞103次,收藏97次。Windows UAC权限详解以及因为权限不对等引发的若干问题分享。_uac权限

目标检测:数据集划分 & XML数据集转YOLO标签-程序员宅基地

文章浏览阅读1.1k次,点赞16次,收藏20次。目标检测的数据集划分以及XML格式转为YOLO的Label格式

jupyter下使用conda环境_jupyter conda-程序员宅基地

文章浏览阅读1.7k次。安装nb_condaconda install nb_conda安装完成后,jupyter notebook中多了Conad选项卡,但此时还不能用,还需要在每一个虚拟环境中安装jupyter.在虚拟环境中安装jupyter进入虚拟环境,Linux&mac环境:source activate your_env_name,在windows下执行conda activate your_env_name在虚拟环境中安装jupyter:pip install ipykernel,这样重新执行j_jupyter conda

【长期更新】 PHP题目-程序员宅基地

文章浏览阅读74次。1.要求在一组数中,插入一个新数,并维护原来的排序方式不变<?php//1.要求在一组数中,插入一个新数,并维护原来的排序方式不变function insertArr($arr,$val){ $pos=0; if (sizeof($arr)==0) return array($val); //传入数组没有值 if (sizeof(..._php 要求在一组数中,插入一个新数,并维护原来的排序方式不变

随便推点

(一)数字图像处理基础知识点_数字图像处理知识点-程序员宅基地

文章浏览阅读3.2k次,点赞2次,收藏34次。数字图像处理学习笔记_数字图像处理知识点

基于ECS使用FileZilla Server建立安全的SSL/TLS FTP_filezella server安全配置-程序员宅基地

文章浏览阅读282次。注意:剩下的保持默认即可。上述结果表明已经成功登陆。_filezella server安全配置

环境变量法来实现Docker中nginx配置文件参数的动态修改_nginx 使用docker环境变量-程序员宅基地

文章浏览阅读1.1k次。Docker进入大众的视野已经7个年头了(国内火起来),可谓是经历了多次的大热大冷,走到今天我觉得它还是一个中小企业实现运维自动化的不二选择。18年接触Docker时根据公司业务制作了一系列的订制镜像,今天重启基础服务升级。将制作经验分享出来。1、在docker run -it 镜像名:版本 -e 指定环境变量文件 -v指定映射文件目录 -d 后台运行。执行命令:docker build -t 镜像名:版本 ._nginx 使用docker环境变量

Android CPU架构之ARM和X86_android x86-程序员宅基地

文章浏览阅读7.5k次,点赞4次,收藏36次。中央处理器(Central Processing Unit,简称CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。——百度百科将晶体管作为开关,将一个开关的输出端与另一个的输入端相连,就能构成各种逻辑电路和功能块,这些功能块采用的形式包括加法器、锁存器、触发器、寄存器、计数器等等,我们可以使用这些功能块构建自定义执行单元来执行特定计算。归根结底,CPU就是构建多个专用处理元件,并用多种方式将它们连接起来,从而实现复杂的计算的芯片。_android x86

MySQL的分布式——flask-sqlalchemy实现读写分离_flask-sqlalchemy分表解决方案-程序员宅基地

文章浏览阅读2k次,点赞3次,收藏12次。目录1、复制1.1 主从架构(一主多从)1.2 主备架构1.3 高可用复合架构2、flask-sqlalchemy实现读写分离3、分片3.1 垂直拆分3.1.1 垂直分表3.1.2 垂直分库3.2 水平拆分3.2.1 水平分表4、分布式的问题4.1 分布式事物问题解决方案4.2 解决跨节点 Join/排序/分页1、复制作用:对数据进行备份,实现高可用HA通过读写分离,提高吞吐量,实现高性能原理:当主库中有数据更新时,主库会将该操作写入一个二进制日志文件中,从库中专门有一个io线程去读取主库_flask-sqlalchemy分表解决方案

python 内存不足报错_Spark排错与优化-程序员宅基地

文章浏览阅读840次。一. 运维1. Master挂掉,standby重启也失效Master默认使用512M内存,当集群中运行的任务特别多时,就会挂掉,原因是master会读取每个task的event log日志去生成Spark ui,内存不足自然会OOM,可以在master的运行日志中看到,通过HA启动的master自然也会因为这个原因失败。解决增加Master的内存占用,在Master节点spark-env.sh ..._a task of very large size