• 盘点一个os.path.join()函数遇到的小问题(文末赠书)


    点击上方“Python爬虫与数据挖掘”,进行关注

    回复“书籍”即可获赠Python从入门到进阶共10本电子书

    连峰去天不盈尺,枯松倒挂倚绝壁。

    大家好,我是皮皮。

    一、前言

    前几天在Python最强王者群【小马哥】问了一个os路径拼接处理的问题,一起来看看吧。

    问大佬个简单的问题, temp = os.path.join('/hello/', 'good/date', 'body') print(temp)        # temp的值是:  /hello/good/date\body 在最后的date和body之间,是用  \ 连接,为什么在 hello和good之间没有  \  ?

    188fcb6dd60849130d16146248d7970d.png

    二、实现过程

    这里【~上善居士~ 郭百川】和【东哥】给了指导如下:

    9b2dc8c744c3d4aaf89e16ed5b5e6a36.png

    在Python中,os.path.join()函数用于将多个路径组合成一个路径。当使用这个函数时,如果某个部分已经是一个有效的路径,那么可以省略这个部分前面的路径分隔符(例如/或\),以避免重复。在这个例子中,/hello/good/date已经是一个有效的路径,所以当我们将它与body连接起来时,就不需要再添加一个路径分隔符\了。因此,最终的结果是/hello/good/date\body。如果我们有一个不完整的路径,比如只有/hello/,那么我们就需要在它和另一个路径部分之间添加一个路径分隔符\,以便将它们组合成一个完整的路径。

    后来【Python小小小白】也给了一个解析,如下:/和\对于os.path.join来说都是有效的路径符号,/是linux等系统的路径符号,\是Windows的路径符号,当你提供的拼接字符串中已包含其中一种符号时,会被认为是有效的连接符,当遇到没有提供连接符的时候,就会根据你现在的系统匹配路径符号。因为你是在windows系统中运行的代码,所以就自动拼接了\,而不是/,所以就出现了前后不一样的情况。

    615b83714cffce0af0d4ceca615d9c62.png

    顺利地解决了粉丝的问题。

    下面是赠书时间:(留言赠书,老规矩)

    《3D科研绘图 · 与学术图表绘制从入门到精通》

    一本书精通3D科研绘图与学术图表绘制的核心技术!

    关键点

    专业级3D科研绘图与学术图表绘制指南

    以“设计基本概念+软件底层原理+案例实际操作”的思路进行全方位讲解

    涵盖化学、材料学、生物医学等领域的科学可视化的艺术化表达

    卖点

    1.实例丰富:我们涵盖各类绘图软件与工具,让你能够自如运用不同技术绘制出高质量的图表。

    2.内容全面:全流程讲解3D科研绘图与学术图表绘制的方法,有效填补了现有同类型参考书的空白。

    3.经验总结:作者多年一线研发实战经验全面归纳整理,毫无保留分享技术要领。

    4.大咖力荐:多位大型科技公司技术高管和高校相关领域教研专家推荐。

    5.全彩印刷:图表案例精彩呈现,带来良好的阅读体验,方便理解和学习。

    内容简介

    本书共7章,系统讲解了化学、材料学、生物医学等领域的作图需求和相关软件技术,并从设计基本概念、软件底层原理和案例实际操作三个方面展开全方位的教学。

    本书在内容的设定和案例的选择上充分考虑了读者对象的需求,无论是刚入门的初学者还是寻求深度发展的科学可视化人员,都能从中汲取所需的知识。特别是涉及专业科学可视化部分的内容,有效填补了现有同类型参考书的空白。本书专为有图像设计需求的研究人员和科学可视化从业者编写。

    作者简介

    李浩东,复旦大学高分子专业博士,国内最大的3D科研绘图微信公众号“3D科研绘图”主笔,杭州思斐迩科技有限公司联合创始人之一、设计总监。曾为全球上百家高校和科研机构提供设计服务,包括中科院、清华、北大、MIT、Stanford、ETHZurich、EPFL等,设计作品被Science、Nature、JACS、Angew等知名期刊选用。目前已为浙江大学、同济大学、上海科技大学、武汉大学、中科院大连化物所、山西煤化所、青岛生物能源所等单位提供专业绘图讲座和培训,线上线下总受众数超十万人。

    a47e3550f1f4870bf5782191d767c9a3.jpeg

    三、总结

    大家好,我是皮皮。这篇文章主要盘点了一个os文件路径拼接处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

    最后感谢粉丝【小马哥】提问,感谢【~上善居士~ 郭百川】、【东哥】、【Python小小小白】给出的思路和代码解析,感谢【莫生气】等人参与学习交流。

    【提问补充】温馨提示,大家在群里提问的时候。可以注意下面几点:如果涉及到大文件数据,可以数据脱敏后,发点demo数据来(小文件的意思),然后贴点代码(可以复制的那种),记得发报错截图(截全)。代码不多的话,直接发代码文字即可,代码超过50行这样的话,发个.py文件就行。

    935e81a7eb9b6508375f7e0f2f917d03.png

    大家在学习过程中如果有遇到问题,欢迎随时联系我解决(我的微信:pdcfighting1),应粉丝要求,我创建了一些ChatGPT机器人交流群和高质量的Python付费学习交流群和付费接单群,欢迎大家加入我的Python学习交流群和接单群!

    abded12161c123686d481cf3efd6f339.png

    小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

    84b068b7dd86adbe78241277e3ea735d.jpeg

    ------------------- End -------------------

    往期精彩文章推荐:

    82df79dcc9c19721083e89fc4da87579.png

    欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

    想加入Python学习群请在后台回复【入群

    万水千山总是情,点个【在看】行不行

    /今日留言主题/

    随便说一两句吧~~

  • 相关阅读:
    新生儿常见问题>奶癣
    DQL简介
    在一个字符串中找到没有重复字符子串中最长的长度。
    VsCode中运行C/C++
    复现dns外带数据结合sqlmap
    Mybatis-Plus学习笔记
    C++语法琐碎记录
    Ingress:比Service更强大的服务暴露与负载均衡
    call()、apply()、bind() 区别、使用场景、实现方式
    QT常用控件介绍
  • 原文地址:https://blog.csdn.net/pdcfighting/article/details/132784220