os.path-对路径path进行的操作

在调用os.path时, 根据操作系统的不同 程序会选择使用posixpath.pyntpath.py(由os中的代码实现).

对文件命名时应当使用unicode字符串(操作系统允许的字符), 但unix中有时无法使用任意字符进行命名, 此时需要字节对象进行表示. 而windows的情况则相反.

因此对于此模块中的方法, 既可以传递字节文件路径对象, 也可以传递字符文件路径对象.


关于文件路径自动扩展(替换路径中的环境变量):

该模块中有两个方法支持自动扩展

1.expanduser(path) 用于扩展用户目录路径

import os

fp1 = os.path.expanduser('~')
fp2 = os.path.expanduser("~user") print(fp1, fp2, sep='\n')
# result:
# C:\Users\<自己的用户名>
# C:\Users\user

有以下注意点:

  • 参数path中必须以 ~ 或 ~user 开始
  • ~ 的替换与环境变量 USERPROLIE 有关(windows中), ~user 的替换与环境变量 HOMEPATH 和 HOMEDRIVE(主要) 相关

2.expandvars(path) 用于扩展环境变量的值

import os

fp1 = os.path.expandvars("$USERPROFILE\$OS")
fp2 = os.path.expandvars("${USERPROFILE}") print(fp1, fp2, sep='\n')
# result:
# C:\Users\<username>\Windows_NT
# C:\Users\<username>

有以下注意点:

  • 环境变量的表示方法为 $name${name}
  • windows中还可以表示为 %name%
  • 查询环境变量可以使用os.environ

os.path路径拓展 python3的更多相关文章

  1. Python之os.path路径模块中的操作方法总结

    #os.path模块主要集成了针对路径文件夹的操作功能,这里我们就来看一下Python中的os.path路径模块中的操作方法总结,需要的朋友可以参考下 解析路径路径解析依赖与os中定义的一些变量: o ...

  2. Python3基础 os.path.dirname 对路径字符串进行处理 返回所在文件夹的路径

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  3. Python3基础 os.path.basename 处理路径字符串,返回文件的名字

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  4. Python3 操作系统与路径 模块(os / os.path / pathlib)

    #!/usr/bin/env python # coding=utf-8 __author__ = 'Luzhuo' __date__ = '2017/5/7' import os def os_de ...

  5. python3中,os.path模块下常用的用法总结

    abspath basename dirname exists getatime getctime getmtime getsize isabs isdir isfile islink ismount ...

  6. python3 os.path.realpath(__file__) 和 os.path.cwd() 方法的区别

    python3 os.path.realpath(__file__) 和 os.path.cwd() 方法的区别 os.path.realpath 获取当前执行脚本的绝对路径. os.path.rea ...

  7. Python3.x:os.path模块

    Python3.x:os.path模块 #返回绝对路径 os.path.abspath(path) #返回文件名 os.path.basename(path) #返回list(多个路径)中,所有pat ...

  8. Python3 os.path() 模块

    os 模块提供了非常丰富的方法用来处理文件和目录.常用的方法如下表所示: 序       号 方法及描述 1 os.access(path, mode):检验权限模式 2 os.chdir(path) ...

  9. Python3 os.path() 模块笔记

    os.path 模块主要用于获取文件的属性. 以下是 os.path 模块的几种常用方法: 方法 说明 os.path.abspath(path) 返回绝对路径 os.path.basename(pa ...

随机推荐

  1. FFT-Matlab初步实现

    /****************************************************/ /******************************************** ...

  2. 翻译一篇英文文章,主要是给自己看的——在ASP.NET Core Web Api中如何刷新token

    原文地址 :https://www.blinkingcaret.com/2018/05/30/refresh-tokens-in-asp-net-core-web-api/ 先申明,本人英语太菜,每次 ...

  3. JavaWeb_(Jar)使用fastjson解析json和序列化对象

    菜鸟教程 传送门 JSON官网 传送门 fastjson插件下载 传送门 序列化[百度百科]:序列化 (Serialization)是将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对 ...

  4. Java中FileOutputStream流的write方法

    本文为大家分享了FileOutputStream流的write方法,供大家参考,具体内容如下 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...

  5. JMS学习(一)

    转自:https://blog.csdn.net/jiuqiyuliang/article/details/46701559 1.基本概念 JMS是java的消息服务,JMS的客户端之间可以通过JMS ...

  6. ”锁“-LockSupport深入浅出

    LockSupport是Java6引入的一个工具类,它简单灵活,应用广泛. 一.简单 俗话说,没有比较就没有伤害.这里咱们还是通过对比来介绍LockSupport的简单. 在没有LockSupport ...

  7. 9、kubernetes之statefulset控制器

    一.StatefulSet 有状态副本集 必要的三个组件:headless service.StatefulSet.volumeClaimTemplate 准备pv apiVersion: v1 ki ...

  8. .tcc文件

    今天看源码时碰到一个MemoryPool.h文件和MemoryPool.tcc文件,毫不犹豫在vs工程下把.tcc加到了源文件文件夹下, 把.h文件放到了头文件文件夹下.结果闹了笑话: 以下是解释, ...

  9. echarts_04

    通过ajax加载本地文件: 1.http://www.cnblogs.com/qjqcs/archive/2016/09/07/5850282.html 2.http://blog.csdn.net/ ...

  10. Win7、win8、win10下实现精准截获Explorer拷贝行为

    介绍了windows下对Explorer的拷贝动作的精确截获,这个在企业数据安全dlp产品系列中减少审计的噪音很有效,方便运营人员做针对性的审计. 在企业数据安全中我通常需要监测用户的拷贝行为,特别像 ...