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

  • 从后往前看,会从第一个以”/”开头的参数开始拼接,之前的参数全部丢弃;

  • 以上一种情况为先。在上一种情况确保情况下,若出现”./”开头的参数,会从”./”开头的参数的前面参数全部保留;

import os

print("1:",os.path.join('aaaa','/bbbb','ccccc.txt'))

print("2:",os.path.join('/aaaa','/bbbb','/ccccc.txt'))

print("3:",os.path.join('aaaa','ddd','./bbb','ccccc.txt'))

输出为:

1: /bbbb\ccccc.txt
2: /ccccc.txt
3: aaaa\ddd\./bbb\ccccc.txt
  • 如果最后一个组件为空,则生成的路径以一个’/’分隔符结尾 ;
import os
 
Path1 = 'home'
Path2 = 'develop'
Path3 = ''
 
Path10 = Path1 + Path2 + Path3
Path20 = os.path.join(Path1, Path2, Path3)
Path30 = os.path.join(Path2, Path1, Path3)
print('Path10 = ',Path10)
print('Path20 = ',Path20)

输出:

Path10 =  homedevelop
Path20 =  home\develop\
  • os.path.join()的功能只是起到连接文件的作用,而不能生成文件,如果执行这条语句之后就想生成一个目录或者文件名,可以用:os.mkdir(os.path.join("F:\", "test.txt"))
  • os.path.join(os.getcwd(),'data')是获取当前目录,并组合成新目录

注:Linux用的是/分隔符,而Windows才用的是\

参考:

  1. https://blog.csdn.net/weixin_37895339/article/details/79185119
  2. https://blog.csdn.net/qq_42013574/article/details/102406839
  3. https://blog.csdn.net/qq_40962368/article/details/80272063
  4. https://blog.csdn.net/u012193416/article/details/77247432
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐