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使用案例的更多相关文章

  1. 6.4.1 标准库 os、os.path 与 shutil 简介

    os模块除了提供使用操作系统功能和访问文件系统的简便方法之外,还提供了大量文件与文件夹操作的方法,如下表所示. 方法 功能说明 access(path,mode) 按照 mode 指定的权限访问文件 ...

  2. os、os.path、shutil操作文件和文件路径的常用方法总结

    os模块是python标准库中的一个用于访问操作系统功能的模块,下面简要介绍一下常用的命令 1.os.name().    判断现在正在使用的平台,windows返回’nt’,Linux返回‘posi ...

  3. python中os.path模块简介

    1.python中获取当前工作目录 curDir = os.getcwd() os.getcwd()返回的是执行命令时所在的目录,而不是脚本本身所在的目录 2.os.path os.path.absp ...

  4. os.path 下的各方法

    一.os.path os.path.abspath(file) #拿到当前程序(文件)的绝对目录. os.path.split(pathname) # 返回一个元组,第零个元素为文件上级绝对目录,第一 ...

  5. os.path.md

    os.path 我们可以利用os.path模块提供的函数更容易地在跨平台上处理文件. 即使我们的程序不是用于夸平台, 也应该使用os.path来让路径名字更加可靠. Parsing Paths os. ...

  6. python模块之os.path

    对文件路径的操作 os.path.split(p)函数返回一个路径的目录名和文件名. os.path.splitext():分离文件名与扩展名 os.path.isfile()和os.path.isd ...

  7. 模块 –OS & OS.PATH

    模块-Os模块: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 In [25]: os.getcwd() Out[25]: 'C:\\Users\\***' os.c ...

  8. 转载的:Python os 和 os.path模块详解

    os.getcwd()获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curdi ...

  9. python之os模块(os.path)

    我们在做自动化测试的时候,可能会遇到一些需要处理文件一些需求,那么我们可以通过直接写文件的目录进行操作,当然作为一名自动化测试工程师,怎么可能用这种方法?python中自带的有OS,我们可以通过os模 ...

  10. os.path:平台独立的文件名管理

    介绍 利用os.path模块中包含的函数,很容易编写代码来处理多个平台上的文件 解析路径 import os.path ''' os.path中的第一组函数可以用来将表示文件名的字符串解析为文件名的各 ...

随机推荐

  1. 目前调试移动设备程序只能通过USB线缆

    就像iOS,转移(到设备上)并调试App不可能通过WiFi或蓝牙连接. 一个有线的USB线缆连接现今主要用来调试. 确保你直接将Android设备插入Mac的USB接口,避免使用USB hubs和扩展 ...

  2. scrapy模拟登录微博

    http://blog.csdn.net/pipisorry/article/details/47008981 这篇文章是介绍使用scrapy模拟登录微博,并爬取微博相关内容.关于登录流程为嘛如此设置 ...

  3. Java-Iterator总结

    纸上得来终觉浅,绝知此事要躬行  --陆游    问渠那得清如许,为有源头活水来  --朱熹 迭 代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构. ...

  4. hive:(group by, having;order by)的使用;group by+多个字段,以及wiki说的group by两种使用限制验证

    hive> select * from app_data_stats_historical where os='1' group by dt limit 100; 出现结果如下: 2014-01 ...

  5. PS图像特效算法——百叶窗

    这个只要设置好条纹的宽度和条纹的间隔,建立一个遮罩层,等间隔的对原图进行等间距的遮罩. clc; clear all; Image=imread('4.jpg'); Image=double(Imag ...

  6. Java中如何封装自己的类,建立并使用自己的类库?

    from:http://blog.csdn.net/luoweifu/article/details/7281494 随着自己的编程经历的积累会发现往往自己在一些项目中写的类在别的项目中也会有多次用到 ...

  7. android 资源文字ids的作用

    ids.xml--为应用的相关资源提供唯一的资源id.id是为了获得xml中的对象而需要的参数,也就是Object = findViewById(R.id.id_name)中的id_name.这些值可 ...

  8. 初探linux子系统集之写在前言

    毕业两周年,进入嵌入式linux这个行业也已两个年头有余,从开始的linux驱动,android的framework,到现在的linux应用,android的app以及产品的零零总总,其实很想把这些都 ...

  9. makemenuconfig学习

    内核配置: make config:基于文本模式的交互式配置 make menuconfig:基于文本模式的菜单型配置 <*>文件经过编译由.c文件到.o文件,最后链接压缩为内核镜像,它存 ...

  10. solr研磨之性能调优

    作者:战斗民族就是干  转载请注明地址:http://www.cnblogs.com/prayers/p/8982141.html 本篇文章我们来了解一下solr的性能方面的调优,分为Schema优化 ...