Python_os、os.path、os.shutil使用案例
- import os
- import os.path
- print(os.path.basename('/Users/c2apple/Desktop/彩屏')) #获取路径的最后一个组成部分
- os.path.exists('test1.txt') #测试文件是否存在
- os.rename('data.txt','sample1.txt') #os.renamme()可以实现文件的改名和移动
- print(os.path.exists('shelve_test.dat.db'))
- path1='D//mypython_exp//new_test.txt'
- print(os.path.dirname(path1))
- print(os.path.split(path1)) #切分文件路径和文件名
- print(os.path.splitdrive(path1)) #切分文件扩展名
- print(os.getcwd()) #返回当前工作目录
- print(os.mkdir(os.getcwd()+'//temp')) #创建目录
- os.mkdir(os.getcwd()+'//temp1') #改变当前目录
- print(os.getcwd())
- print(os.mkdir((os.getcwd()+'//test1')))
- print(os.path.commonpath([r'C:\windows\notepad.exe',r'C:\windows\ssysstem']))
- os.rmdir('temp')
- import shutil #导入shutil模块
- shutil.copyfile('dir.txt','dir1.txt') #复制文件
- import os
- import stat
- import shutil
- def remove_readonly(func,path,_): #定义回调函数
- os.chmod(path,stat.S_IWRITE) #删除文件的只读属性
- func(path)
- shutil.rmtree('/Users/c2apple/Desktop/xx文件夹',onerror=remove_readonly) #删除某只读文件夹
- #用递归复制文件夹,并忽略扩展名为pyc的文件和以'新'开头的文件和子文件夹:
- from shutil import copytree,ignore_patterns
- #copytree('/Users/c2apple/Documents/pythonTest','/Users/c2apple/Documents/pythonTest/pythonTest2',ignore_patterns('*','pyc','新'))
- '''
- 如果需要遍历指定目录下的所有子目录和文件,可以使用递归的方法
- '''
- import os
- def visitDir(path): #path为路径,具体以文件路径为主,示例中路径为'/Users/c2apple/Documents/pythonTest'
- if not os.path.isdir(path):
- print('Error:',path,'"is not a directory or does not exist')
- return
- for lists in os.listdir(path):
- sub_path=os.path.join(path,lists)
- print(sub_path)
- if os.path.isdir(sub_path):
- visitDir(sub_path) #递归调用
- visitDir('/Users/c2apple/Documents/pythonTest')
- '''
- 使用os模块的walk()方法进行指定目录的遍历
- '''
- import os
- def visitDir2(path):
- if not os.path.isdir(path):
- print('Error:',path,'"iss not a directory or does not exits.')
- return
- list_dirs=os.walk(path)
- for root,dirs,files in list_dirs: #遍历该元组的目录和文件信息
- for d in dirs:
- print(os.path.join(root,d)) #获取完整路径
- for f in files:
- print(os.path.join(root,f)) #获取文件的绝对路径
- visitDir2('/Users/c2apple/Documents/pythonTest')
- '''
- os模块除了用于文件操作和文件的方法之外,os模块还是提供了大量其他方法。例如,system()方法可以用来执行外部程序或系统内置命令,popen()和
- startfile()也可以用来启动外部程序。另外,Python标准库subbprocess也提供了大量与进程创建与管理有关的对象,pywin32工具包提供的ShellExecute()
- 和CreateProcess()函数,这些对象和函数也可以实现启动外部程序的目的,如果对Python标准库ctypes和系统API函数熟悉,也可以直接调用底层API函数
- 实现更加高阶的功能
- '''
- import subprocess
- h=subprocess.Popen('',executable='C:\\windows\\notepad.exe') #打开记事本程序
- h.terminate() #结束进程
- h=subprocess.Popen('',executable='C:\\windows\\notepad.exe') #打开记事本程序
- h.kill() #结束进程
- h=subprocess.Popen('',executable='C:\\windows\\notepad.exe') #打开记事本程序
- import os
- os.startfile(r'C:\\windows\\notepad.exe') #打开记事本程序
- os.startfile(r'test.py') #执行Python程序
Python_os、os.path、os.shutil使用案例的更多相关文章
- 6.4.1 标准库 os、os.path 与 shutil 简介
os模块除了提供使用操作系统功能和访问文件系统的简便方法之外,还提供了大量文件与文件夹操作的方法,如下表所示. 方法 功能说明 access(path,mode) 按照 mode 指定的权限访问文件 ...
- os、os.path、shutil操作文件和文件路径的常用方法总结
os模块是python标准库中的一个用于访问操作系统功能的模块,下面简要介绍一下常用的命令 1.os.name(). 判断现在正在使用的平台,windows返回’nt’,Linux返回‘posi ...
- python中os.path模块简介
1.python中获取当前工作目录 curDir = os.getcwd() os.getcwd()返回的是执行命令时所在的目录,而不是脚本本身所在的目录 2.os.path os.path.absp ...
- os.path 下的各方法
一.os.path os.path.abspath(file) #拿到当前程序(文件)的绝对目录. os.path.split(pathname) # 返回一个元组,第零个元素为文件上级绝对目录,第一 ...
- os.path.md
os.path 我们可以利用os.path模块提供的函数更容易地在跨平台上处理文件. 即使我们的程序不是用于夸平台, 也应该使用os.path来让路径名字更加可靠. Parsing Paths os. ...
- python模块之os.path
对文件路径的操作 os.path.split(p)函数返回一个路径的目录名和文件名. os.path.splitext():分离文件名与扩展名 os.path.isfile()和os.path.isd ...
- 模块 –OS & OS.PATH
模块-Os模块: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 In [25]: os.getcwd() Out[25]: 'C:\\Users\\***' os.c ...
- 转载的:Python os 和 os.path模块详解
os.getcwd()获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curdi ...
- python之os模块(os.path)
我们在做自动化测试的时候,可能会遇到一些需要处理文件一些需求,那么我们可以通过直接写文件的目录进行操作,当然作为一名自动化测试工程师,怎么可能用这种方法?python中自带的有OS,我们可以通过os模 ...
- os.path:平台独立的文件名管理
介绍 利用os.path模块中包含的函数,很容易编写代码来处理多个平台上的文件 解析路径 import os.path ''' os.path中的第一组函数可以用来将表示文件名的字符串解析为文件名的各 ...
随机推荐
- Android LruCache技术原理
概述 记得在很早之前,我有写过一篇文章Android高效加载大图.多图解决方案,有效避免程序OOM,这篇文章是翻译自Android Doc的,其中防止多图OOM的核心解决思路就是使用LruCache技 ...
- Java-GenricServlet
public abstract class GenericServlet implements Servlet, ServletConfig, java.io.Serializable { priva ...
- Camera 涉及的文件70
点击打开链接 Camera 涉及的文件 1.上电时序 Mediate/custom/$PROJECT/Camera/Camera/kd_camera_hw.c Mediate/custom/$PROJ ...
- iOS 10正式发布:十大新功能,更注重人性化
6月14日凌晨消息,苹果公司举行2016年WWDC全球开发者大会,介绍了watch OS.tv OS.OS X以及iOS 10系统的新特性. 据苹果介绍,iOS 10在锁屏.Siri.地图等十个各方面 ...
- 用C语言绘制一条标准的余弦曲线
#include<stdio.h> #include<math.h> int main() { double y; int x,m; for(y=1;y>=-1;y-=0 ...
- LeetCode之“动态规划”:Maximal Square && Largest Rectangle in Histogram && Maximal Rectangle
1. Maximal Square 题目链接 题目要求: Given a 2D binary matrix filled with 0's and 1's, find the largest squa ...
- Android 4.1.2系统添加重启功能
对于Android的的手机或者平板长期使用,感觉会出现慢的情况,所以偶尔还是需要重启一下,而长按电源键弹出的菜单又没有重启选项,所以特在此记录自己添加这个功能的过程. 首先关机的那个弹出菜单是在fra ...
- SharePoint 用户控件编写的简单介绍
我们开发中,通常需要写各种各样的部件来实现我们的展示或者功能,下面就介绍下刚刚接触的QuickPart+用户控件的方式,算是自己的学习笔记,也和大家交流下心得. 1. 新建Web应用程序 2. 在项目 ...
- 如何在linux上构建objective-c程序
swfit目前还是os x独占,以后会不会扩展到其他系统还未可知,但objective-c并不只存在于os x,在linux下gcc和clang都支持obj-c哦,下面简单把如何在ubuntu上构建o ...
- window配置mongodb集群(副本集)
参数解释: dbpath:数据存放目录 logpath:日志存放路径 pidfilepath:进程文件,有利于关闭服务 logappend:以追加的方式记录日志(boolean值) replSet:副 ...