Python 文件读写 文件和路径
1、在Windows上,使用倒斜杆作为文件夹之间的分隔符,在Linux上,使用正斜杠作为路径分隔符。在编写Python脚本时,可以os.path.join()函数来处理
在Windows环境下命令如下,返回的路径为倒斜杆,倒斜杆有两个,是因为加了转义字符
>>>
>>> import os
>>> os.path.join('usr','bin','pigwan7')
'usr\\bin\\pigwan7'
>>>
在Linux环境下命令,返回的路径为正斜杠
>>>
>>> import os
>>> os.path.join('usr','bin','pigwan7')
'usr/bin/pigwan7'
>>>
2、获得当前路径和改变工作路径
>>>
>>> import os
>>> os.chdir('/usr/bin')
>>> os.getcwd()
'/usr/bin'
>>> os.chdir('/root')
>>> os.getcwd()
'/root'
>>>
3、创建新文件夹
>>>
>>> os.makedirs('/home/xiaobai/study')
>>> os.chdir('/home/xiaobai/study')
>>> os.getcwd()
'/home/xiaobai/study'
>>>
4、相对路径和绝对路径
os.path.abspath(path)返回参数的绝对路径的字符串,os.path.isabs(path),返回一个布尔值,判断是否是相对路径
>>>
>>> os.path.abspath('.')
'/home/xiaobai/study'
>>> os.path.isabs('.')
False
>>>
os.path.dirname(path)返回一个字符串,包含path参数中最后一个斜杠之前的所有内容;os.path.basename(path)将返回path参数中最后一个斜杠之后的所有内容
>>>
>>> os.path.dirname('/home/xiaobai/study/test.txt')
'/home/xiaobai/study'
>>> os.path.basename('/home/xiaobai/study/test.txt')
'test.txt'
>>>
os.path.split()返回两个字符串的元组,包含路径的目录名称和基本名称
>>>
>>> os.path.split('/home/xiaobai/study/test.txt')
('/home/xiaobai/study', 'test.txt')
>>>
查看文件大小和文件夹内容
os.path.getsize(path)返回path参数中文件的字节数,下面这个例子中的文件大小为51200字节
>>>
>>> os.path.getsize('/home/xiaobai/study/test.txt')
51200
>>>
os.listdir(path)返回path参数中文件名的字符串列表,/home/xiaobai/study目录下共有3个文件
[root@client01 study]#
[root@client01 study]# pwd
/home/xiaobai/study
[root@client01 study]# ll
total 156
-rw-r--r--. 1 root root 51200 Nov 17 01:28 test1.txt
-rw-r--r--. 1 root root 51200 Nov 17 01:28 test2.txt
-rw-r--r--. 1 root root 51200 Nov 17 01:24 test.txt
[root@client01 study]#
>>>
>>> os.listdir('/home/xiaobai/study/')
['test.txt', 'test1.txt', 'test2.txt']
>>>
利用os.path.getsize(path)和os.listdir()可以计算文件夹下所有文件的大小
>>>
>>> totalSize=0
>>> for filename in os.listdir('/home/xiaobai/study/'):
... totalSize=totalSize + os.path.getsize(os.path.join('/home/xiaobai/study/',filename))
...
>>> print(totalSize)
153600
>>>
5、检测路径有效性
>>>
>>> os.path.exists('/home/xiaobai')
True
>>> os.path.isdir('/home/xiaobai')
True
>>> os.path.isfile('/home/xiaobai')
False
>>>
Python 文件读写 文件和路径的更多相关文章
- Python 3 读写文件的简单方法!
Python 3 读写文件的简单方法! a = open('test.txt','w') 这行代码创建了一个名为test的文本文档,模式是写入(模式分为三种,w代表写入,r代表阅读,a代表在尾行添加) ...
- Python:读写文件(I/O) | 组织文件
1. I/O 概述 程序与用户交互涉及到程序的输入输出(I/O) 一种类型是字符串,通过input() 和 print() 函数以及数据类型转换类函数如(int()),实现数据的输入输出. 另一种类 ...
- python查找读写文件
import os ''' 跟据文件名称,后缀查找指定文件 path:传入的路径 filename:要查找的文件名 suffix:要查找的文件后缀 return :返回查找的文件路径 ''' file ...
- 笨方法学python之读写文件、open函数的用法
一.python读写文件相关知识点 close:关闭文件 read:读取文件的内容//你可以把结果赋给一个变量 readline:只读取文件中的一行 truncate 美 /trʌŋ'ket/ :清空 ...
- python文件读写 文件修改
#设置一个变量f为文件对象,并打开文件#写文件#f = open('user.txt','w',encoding='utf-8') #f是一个文件对象f=open(r'c:\Users\PL\Desk ...
- Python中读写文件三部曲
写入文件:要把第二个参数 'r' 改成 'w' ,表示write,即以写入的模式打开文件; 往文件中写入内容,使用write()函数. 例子如下:注意 'w' 写入模式会暴力清空掉原有文件,然后再写 ...
- Python文件读写 - 文件r+ a+ open读写实际表现[示例]
先说结论: 文件r+ open: 1. write()不能实现插入写,它总是覆盖写或附加写: 2. 如果文件一打开即write(),则从开头覆盖写; 3. 如果文件一打开,用f.seek()指定文件指 ...
- python之读写文件
1. 读取文件数据,文件必须存在才可以读且如要读取的文件不和当前.py在同一个包下,需要特别指定此文件路径才行 f=open('test.txt',encoding='utf-8')#填写文件路径,打 ...
- python 多进程读写文件
import time from multiprocessing import Process, JoinableQueue, cpu_count import csv ####处理一条数据的方法 d ...
随机推荐
- C A Simple Job
题目3 : A Simple Job时间限制:1000ms单点时限:1000ms内存限制:256MB描述Institute of Computational Linguistics (ICL), Pe ...
- UVALive 7500 Boxes and Balls 2015EC final 签到题 二分
分析题目后,得到要求的是最接近n的一个数,并且这个数字能写成1+2+3+....+x = ans这种形式. 要求的是最大的值. 这题就直接二分去做吧.二分出一个f(mid)<=n的最大值. 最后 ...
- (转)Linux: dirname、basename命令详解
Linux: dirname.basename命令详解 原文:http://blog.sina.com.cn/s/blog_3f63916f010143vo.html 一.dirname指令 1.功能 ...
- vs2017 运行所选代码生成器时出错
[转]https://blog.csdn.net/sunshineyang1205/article/details/80211313 ASPNET MVC Core中像Controller中添加控制器 ...
- abp(net core)+easyui+efcore仓储系统——解决方案介绍(二)
abp(net core)+easyui+efcore仓储系统目录 abp(net core)+easyui+efcore仓储系统——ABP总体介绍(一) ABP框架 首先介绍一下abp框架,abp其 ...
- SQL中改变列的数据类型
一.该列非主键.无default约束 直接更新: alter table 表名 alter column 列名 数据类型 二.该列为主键列.无default约束 (1)删除主键 alter table ...
- flask SQLAlchemy query.filter_by 常用操作符
常用的filter操作符 下面的这些操作符可以应用在filter函数中 equals: query.filter(User.name == 'ed') not equals: query.filter ...
- 关于Arduino项目的构建思想-转自openbook开源杂志
- springcloud中servcie层调用fegin异常以及异步方法的实现
近日在做业务上的短信推送和APP消息推送,通过调用别的模块的接口来实现,在springcloud中通过fegin进行调用.这里要说明的事情并不是如何开发推送功能,而是在调试过程中碰到的一些小问题.我把 ...
- 《大话设计模式》num03-04-05---单一职责原则、开放封闭原则、依赖倒转原则
2018年03月03日 21:19:19 独行侠的守望 阅读数个人分类: 设计模式 版权声明:本文为博主原创文章,转载请注明文章链接. https://blog.csdn.net/xiaoanzi12 ...