python模块学习:os模块
一、os模块概述
Python os模块包含普遍的操作系统功能。例如文件的复制、创建、修改、删除文件及文件夹...
二、常用方法
1、os.listdir() 返回指定目录下的所有文件和目录名。
2、os.remove() 删除一个文件。
3、os.system() 运行shell命令。
4、os.path.split() 函数返回一个路径的目录名和文件名
5、os.path.isfile()和os.path.isdir() 函数分别检验给出的路径是一个文件还是目录,返回值分别为Ture或False
6、os.path.exists() 函数用来检验给出的路径是否存在,返回值分别为Ture或False。
7、os.path.getsize(name) 获得文件大小,如果name是目录返回0L
8、os.path.splitext(name) 分离文件名与扩展名
9、os.path.join(path,name) 连接目录与文件名或目录
10、os.path.basename(path) 返回文件名
11、os.path.dirname(path) 返回文件路径
12、os.walk(path)
该函数返回一个元组,该元组有3个元素,这3个元素分别表示每次遍历的路径名,目录列表和文件列表
os.walk()举例:>>> import os
>>> for root, dirs, files in os.walk("wd/chat", topdown=False):
... for name in files:
... print(os.path.join(root, name)) #打印文件绝对路径
... for name in dirs:
... print(os.path.join(root, name)) #打印目录绝对路径 ...
实例1:用python批量修改文件的扩展名:
import os # 列出当前目录下所有的文件
files = os.listdir(".") for filename in files:
portion = os.path.splitext(filename)
# 如果后缀是.txt
if portion[1] == ".pdb":
# 重新组合文件名和后缀名
newname = portion[0] + ".dssp"
os.rename(filename,newname)
实例2:找出两个文件夹中文件名不同的文件(两个文件夹中的文件扩展名是不同的)
# -*- coding: utf-8 -*-
"""
Created on Sun Jul 12 10:55:03 2015 @author: chaofn
""" import os
files_ss=os.listdir('G:/Manesh_ss')
#生成Manesh_ss目录下去除扩展名的文件名列表
files1=[os.path.splitext(filename)[0] for filename in files_ss]
files_ss2=os.listdir('G:/Manesh_ss2')
#生成Manesh_ss2目录下去除扩展名的文件名列表
files2=[os.path.splitext(filename)[0] for filename in files_ss2]
for filename in files1:
if filename not in files2:
print (filename)
实例3:更改目录下所有文件的后缀名
# -*- coding: utf-8 -*-
"""
Created on Sun Jul 12 16:13:01 2015 @author: Administrator
""" import os
files=os.listdir('G:/Manesh_ss')
for filename in files:
newname=os.path.splitext(filename)[0]+'.txt' os.rename('G:/Manesh_ss/%s'%filename,'G:/Manesh_ss/%s'%newname)
python模块学习:os模块的更多相关文章
- day5模块学习 -- os模块学习
python基础之模块之os模块 os模块 os模块的作用: os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常手动需要做的操作,就比如说:显示当前目录下所有文件/ ...
- Python:模块学习——os模块
os模块提供了多个访问操作系统服务的功能 os模块中一些重要的函数和变量 os.name 显示当前使用平台 os.getcwd() 显示当前Python脚本工作路径 os.listdir('dirna ...
- Python内置OS模块用法详解
大家好,从今天起早起Python将持续更新由小甜同学从初学者的角度学习Python的笔记,其特点就是全文大多由新手易理解的代码与注释及动态演示.刚入门的读者千万不要错过! 很多人学习python,不知 ...
- python 常用模块(一): os模块,序列化模块(json模块 pickle模块 )
1.os模块 2.序列化模块:(1)json模块 和 pickle模块 一.os模块 os.path.abspath: (1)把路径中不符合规范的/改成操作系统默认的格式 import os path ...
- 善于利用python中的os模块
作为一个程序猿,平时善于利用python中的os模块进行路径等操作,会省去很多麻烦,下面总结一下我平时经常用到的方法: import os os.getcwd() # 获取当前文件所在的目录 os.p ...
- Python入门-模块2(random模块、os模块)
>>> random.randomrange(1,10) #返回1-10之间的一个随机数,不包括10 >>> random.randint(1,10) #返回1-1 ...
- Python基础入门-os模块
今天我们来介绍一下os模块中常用的一些方法,当然python中的os模块中提供的使用方法有很多,但是这里面小编会列举出来一些和实际工作中应用的相关的方法,而且会有一些实际的例子方便大家对os模块理解. ...
- (转)python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)
阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代 ...
- Python中使用os模块执行远程命令
1. 使用os模块远程执行命令 服务端代码 1 import socket 2 import os 3 4 sh_server = socket.socket() #创建一个socket对象 5 sh ...
- 时间模块之datatime模块、os模块、sys模块、json模块、json模块实操
目录 一.模块的绝对导入和相对导入 二.包的概念 三.编程思想的转变 四.软件开发目录规范 五.常见的内置模块 一.时间模块之datatime模块 1.datetime.datetime.today( ...
随机推荐
- Flink升级到1.4版本遇到的坑
Flink 1.4没出来以前,一直使用Flink 1.3.2,感觉还算稳定,最近将运行环境升级到1.4,遇到了一些坑: 1.需要将可运行程序,基于1.4.0重新编译一次 2.对比了一下flink-co ...
- 使用Flink时遇到的问题(不断更新中)
1.启动不起来 查看JobManager日志: WARN org.apache.flink.runtime.webmonitor.JobManagerRetriever - Failed to ret ...
- springboot swagger-ui结合
随着移动互联的发展,前后端的分离已经是趋势.前后端已不是传统部门的划分,而是它们各有一套的生态系统,包括不同的开发语言.不同的开发流程.构建方式.测试流程等.做前端的不需要会maven作为构建工具,后 ...
- JavaWeb之Java Servlet完全教程(转)
Servlet 是一些遵从Java Servlet API的Java类,这些Java类可以响应请求.尽管Servlet可以响应任意类型的请求,但是它们使用最广泛的是响应web方面的请求. Servle ...
- iOS 数据加密方案
iOS安全攻防(二十三):Objective-C代码混淆 提交用户的隐私数据 一定要使用POST请求提交用户的隐私数据GET请求的所有参数都直接暴露在URL中请求的URL一般会记录在服务器的访问日志中 ...
- linux下增加磁盘改变指定文件路径分区挂载点和迁移数据
Centos7 系统上原有目录/data 挂载根目录下,空间有点小,我们需要把/data目录挂载到另一个磁盘,同时把数据迁移. 1.查看分区情况 fdisk -l 2.查看路径对应分区情况 df -l ...
- CPP--正码,反码,补码~附整数溢出的探讨
之前说到了long的争议(http://www.cnblogs.com/dotnetcrazy/p/8059210.html),这边就不用long来举例了,用int吧 可以看一下这篇文章(http:/ ...
- Android 7.1 ActivityManagerService 屏幕旋转流程分析 (四)
四.Activity的更新(旋转) sendNewConfiguration()会调用到ActivityManagerService的updateConfiguration()来update Conf ...
- java log4j基本配置及日志级别配置详解
java log4j日志级别配置详解 1.1 前言 说出来真是丢脸,最近被公司派到客户公司面试外包开发岗位,本来准备了什么redis.rabbitMQ.SSM框架的相关面试题以及自己做过的一些项目回顾 ...
- Head First设计模式之中介者模式
一.定义 又称为调停者模式,定义一个中介对象来封装系列对象之间的交互.中介者使各个对象不需要显示地相互引用,从而使其耦合性松散,而且可以独立地改变他们之间的交互. 二.结构 组成: ● 抽象中介者(M ...