《Python Cookbook 3rd》笔记(5.11):文件路径名的操作
文件路径名的操作
问题
你需要使用路径名来获取文件名,目录名,绝对路径等等。
解法
使用 os.path 模块中的函数来操作路径名。下面是一个交互式例子来演示一些关键的特性:
>>> import os
>>> path = '/Users/beazley/Data/data.csv'>>> # Get the last component of the path
>>> os.path.basename(path)
'data.csv'>>> # Get the directory name
>>> os.path.dirname(path)
'/Users/beazley/Data'>>> # Join path components together
>>> os.path.join('tmp', 'data', os.path.basename(path))
'tmp/data/data.csv'>>> # Expand the user's home directory
>>> path = '~/Data/data.csv'
>>> os.path.expanduser(path)
'/Users/beazley/Data/data.csv'>>> # Split the file extension
>>> os.path.splitext(path)
('~/Data/data', '.csv')
>>>
讨论
对于任何的文件名的操作,你都应该使用 os.path 模块,而不是使用标准字符串操作来构造自己的代码。特别是为了可移植性考虑的时候更应如此,因为 os.path 模块知道 Unix 和 Windows 系统之间的差异并且能够可靠地处理类似 Data/data.csv 和Datandata.csv 这样的文件名。其次,你真的不应该浪费时间去重复造轮子。通常最好是直接使用已经为你准备好的功能。
要注意的是 os.path 还有更多的功能在这里并没有列举出来。可以查阅官方文档来获取更多与文件测试,符号链接等相关的函数说明。
《Python Cookbook 3rd》笔记(5.11):文件路径名的操作相关推荐
- 《Python Cookbook 3rd》笔记汇总
文章目录 一.数据结构 二.字符串和文本 三.数字.日期和时间 四.迭代器与生成器 五.文件与IO 一.数据结构 标题 关键词 1.1:拆分序列后赋值给多个变量 可迭代对象.拆分赋值 1.2:拆分任意 ...
- 《Python Cookbook 3rd》笔记(1.4):查找最大或最小的N个元素
<Python Cookbook 3rd>1.4:查找最大或最小的N个元素 问题 怎样从一个集合中获得最大或者最小的N个元素列表? 解法 heapq 模块有两个函数:nlargest()和 ...
- Machine Learning with Python Cookbook 学习笔记 第8章
Chapter 8. Handling Images 前言 本笔记是针对人工智能典型算法的课程中Machine Learning with Python Cookbook的学习笔记 学习的实战代码都放 ...
- Python Cookbook 3rd Edition Documentation
Python Cookbook 3rd Edition Documentation 文章目录 第一章:数据结构和算法 1.1 解压序列赋值给多个变量 问题 解决方案 讨论 1.2 解压可迭代对象赋值给 ...
- 《Python cookbook》笔记二
<Python cookbook>笔记二 第二章 字符串和文本 -使用多个界定符分割字符串- 你需要将一个字符串分割为多个字段,但是分隔符 (还有周围的空格) 并不是固定 的. # str ...
- Machine Learning with Python Cookbook 学习笔记 第6章
Chapter 6. Handling Text 本笔记是针对人工智能典型算法的课程中Machine Learning with Python Cookbook的学习笔记 学习的实战代码都放在代码压缩 ...
- 北理工嵩天Python语言程序设计笔记(8 文件和数据格式化)
前言 本文是对<北理工 嵩天/黄天宇/礼欣 Python语言程序设计>的学习笔记,供自己查阅使用. 文章目录 北理工嵩天Python语言程序设计笔记(目录) 北理工嵩天Python语言程序 ...
- Machine Learning with Python Cookbook 学习笔记 第9章
Chapter 9. Dimensionality Reduction Using Feature Extraction 前言 本笔记是针对人工智能典型算法的课程中Machine Learning w ...
- 《Python Cookbook 3rd》笔记(5.1):读写文本数据
读写文本数据 问题 你需要读写各种不同编码的文本数据,比如 ASCII,UTF-8 或 UTF-16 编码等. 解法 使用带有 rt 模式的 open() 函数读取文本文件(t表示text文本模式,默 ...
最新文章
- oracle中before,Oracle中Before和After触发器的例子
- struts+spring+hibernate总结
- oracle好难装,安装oracle 10g 的艰难之旅
- 12-基于selenium实现12306模拟登录,及京东登录滑动缺口验证模拟登录
- 最简洁的y460显卡切换安装方式
- python标准库os中用来列出_Python 标准库 os 中用来列出指定文件夹中的文件和子文件夹列表的方式是listdir()。_高职高专数字资源平台答案_学小易找答案...
- 可以买的一本书:3D计算机图形学(原书第3版)
- 使用 Laravel sharedLock 与 lockForUpdate 进行数据表行锁
- 计算机组成原理pd指令是什么,计算机组成原理期中考试(DOC).doc
- C语言正函数nosign,Function declarations(函数声明)
- 为什么要重写hashCode()
- Discuz! X2.5 添加风格模板
- 菜鸟上网必备知识大全
- mysql防注入方法_防止SQL注入的六种方法
- linux 下录音软件,linux下录音软件Audacity[zt]
- 急急急急急急!!! liferay portal
- 【100%通过率】华为OD机试真题 Java 实现【预订酒店】【2022.11 Q4 新题】
- 一秒解决笔记本无法连接网络问题——解决笔记本插网线,显示未识别网络。
- java 图片 黑白_java – 将图像转换为黑白(不是灰色标尺)
- orcad capture 快速制作原理图库
热门文章
- aliyun centos6 安装mysql_阿里云CentOS6.8安装MySQL5.6
- delete hive_Hive高级调优
- python 怎么处理json_Python是怎样处理json模块的
- mfc点击按钮让对话框关闭_WinXP系统开始菜单中关机按钮消失的恢复教程
- hp服务器如何ghost系统,惠普(HP)电脑安装不了GHOST系统的解决办法
- 小学有学计算机课程,如何进行小学计算机课程有效教学.doc
- 【转】C++中的static_cast ,reinterpret_cast的用法和区别
- 【转】C++指针详解!!!!
- 【基础】Qt-VS调试器下载与配置
- 【Github】怎么在README.md中添加图片?