import os
#getcwd() 获取当前工作目录(当前工作目录默认都是当前文件所在的文件夹)print(os.getcwd())#chdir()改变当前工作目录
os.chdir('C:\\Users\\asus\\Desktop\\图片')
result = os.getcwd()print(result)#listdir() 获取指定文件夹中所有内容的名称列表
result = os.listdir('C:\\Users\\asus\\Desktop\\图片')print(result)#返回一个列表# mkdir() 创建文件夹# os.mkdir('C:\\Users\\asus\\Desktop\\图片\\新建文件夹')
os.mkdir('boys.txt',0o777)#在当前目录下创建一个(只能)文件夹#makedirs() 递归创建文件夹(只能)文件夹
os.makedirs('C:\\Users\\asus\\Desktop\\图片\\ni')#rmdir() 删除空目录 如果找不到该空目录或者该目录不是空的就会报错
os.rmdir('C:\\Users\\asus\\Desktop\\图片\\boys')#removedirs 递归删除文件夹 必须都是空目录
os.removedirs('C:\\Users\\asus\\Desktop\\图片\\boys\\aff')#rename() 文件或文件夹重命名
os.rename('C:\\Users\\asus\\Desktop\\图片\\n','C:\\Users\\asus\\Desktop\\图片\\ni')#其他目录
os.rename('boys','123')#当前目录#stat() 获取文件或者文件夹的信息
result = os.stat('C:\\Users\\asus\\Desktop\\图片')print(type(result))#<class 'os.stat_result'># system() 执行系统命令(危险函数)
result = os.system('ls - al')#获取隐藏文件print(result)#system() 执行系统命令(危险函数)# #环境变量'''
环境变量就是一些命令的集合
操作系统的环境变量就是操作系统在执行系统命令时搜索命令的目录的集合
'''# getenv() 获取系统的环境变量
result = os.getenv('PATH')print(result)print(result.split(':'))# putenv() 将一个目录添加到环境变量中(临时增加仅对当前脚本有效)
os.putenv('PATH','/home/sy/下载')
os.system('syls')# exit() 退出终端的命令#os模块中的常用值#curdir 表示当前文件夹 .表示当前文件夹 一般情况下可以省略print(os.curdir)# .#pardir 表示上一层文件夹 ..表示上一层文件夹 不可省略!print(os.pardir)# ..
os.mkdir('../../../man')#相对路径 从当前目录开始查找
os.mkdir('/home/sy/man1')#绝对路径 从根目录开始查找#name 获取代表操作系统的名称字符串print(os.name)#posix -> linux或者unix系统 nt -> window系统#sep 获取系统路径间隔符号 window ->\ linux ->/print(os.sep)#extsep 获取文件名称和后缀之间的间隔符号 window. linux -> &print(os.extsep)#linesep 获取操作系统的换行符号 window -> \r\n linux/unix -> \nprint(repr(os.linesep))#以下内容都是os.path子模块中的内容#abspath() 将相对路径转化为绝对路径
path ='./bo'#相对
result = os.path.abspath(path)print(result)#dirname() 获取完整路径当中的目录部分 & basename()获取完整路径当中的主体部分
path ='C:\\Users\\asus\\Desktop\\图片'
result = os.path.dirname(path)
result2 = os.path.basename(path)print(result)#C:\Users\asus\Desktopprint(result2)# 图片#join() 将2个路径合并成一个
var1 ='C:\\Users\\asus\\Desktop\\图片'
var2 ='000.py'
result = os.path.join(var1,var2)print(result)#C:\Users\asus\Desktop\图片\000.py#splitext() 将一个路径切割成文件后缀和其他两个部分,主要用于获取文件的后缀
path ='C:\\Users\\asus\\Desktop\\图片.txt'
result = os.path.splitext(path)print(result)#元祖('C:\\Users\\asus\\Desktop\\图片', '.txt')#getsize() 获取文件的大小
path ='C:/Users/asus/Desktop/图片/1612B.png'
result = os.path.getsize(path)print(result)#30345 单位是k#isfile() 检测是否是文件
path ='C:/Users/asus/Desktop/图片'
result = os.path.isfile(path)print(result)#False因为他是一个文件件#isdir() 检测是否是文件夹
path ='C:/Users/asus/Desktop/图片'
result = os.path.isdir(path)print(result)#True#islink() 检测是否是链接
path =''
result = os.path.islink(path)print(result)print(os.path.getctime('C:/Users/asus/Desktop/图片/ni'))#1550628863.2285938#getctime() 获取文件的创建时间 get create time#getmtime() 获取文件的修改时间 get modify time#getatime() 获取文件的访问时间 get active timeimport time
# time.ctime(时间戳)能把时间戳转成现实时间
filepath ='C:/Users/asus/Desktop/图片/ni'
result = os.path.getctime(filepath)print(time.ctime(result))
result = os.path.getmtime(filepath)print(time.ctime(result))
result = os.path.getatime(filepath)print(time.ctime(result))#exists() 检测某个路径是否真实存在
filepath ='C:/Users/asus/Desktop/图片/ni'
result = os.path.exists(filepath)print(result)#isabs() 检测一个路径是否是绝对路径
path ='C:/Users/asus/Desktop/图片/ni'
result = os.path.isabs(path)print(result)#samefile() 检测2个路径是否是同一个文件
path1 ='C:/Users/asus/Desktop/图片/ni'
path2 ='C:/Users/asus/Desktop/图片/ni'
result = os.path.samefile(path1,path2)print(result)#os.environ 用于获取和设置系统环境变量的内置值#获取系统环境变量 getenv() 效果print(os.environ['PATH'])#设置系统环境变量 putenv()
os.environ['PATH']+=':/home/sy/下载'
os.system('chls')
re模块
import re
# #re.match 尝试从字符串的开始匹配一个模式,如:下面的例子匹配第一个单词
text ="JGood is a handsome boy, he is cool, clever, and so on..."
m = re.match(r"(\w+)\s", text)if m:print(m)print(m.group(0),'\n',m.group(1))#JGood 空格JGoodelse:print('not match')# #re.search函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回,如果字符串没有匹配,则返回None。
text ="JGood is a handsome boy, he is cool, clever, and so on..."
m = re.search(r'\shan(ds)ome\s', text)if m:print(m)print(m.group(0), m.group(1))# handsome dselse:print('not search')# re.match与re.search的区别:re.match只匹配字符串的开始,# 如果字符串开始不符合正则表达式,则匹配失败,函数返回None;# 而re.search匹配整个字符串,直到找到一个匹配。# re.sub# re.sub用于替换字符串中的匹配项。下面一个例子将字符串中的空格 ’ ’ 替换成 ‘-’ :
text ="JGood is a handsome boy, he is cool, clever, and so on..."print(re.sub(r'\s+','-', text,5))# re.split# 可以使用re.split来分割字符串,如:re.split(r’\s+’, text);# 将字符串按空格分割成一个单词列表
text ="JGood is a handsome boy, he is cool, clever, and so on..."
s=re.split(r'\s+', text)print(s)# re.findall# re.findall可以获取字符串中所有匹配的字符串。如:re.findall(r’\w*oo\w*’, text);# 获取字符串中,包含’oo’的所有单词
text ="JGood is a handsome boy, he is cool, clever, and so on..."
s=re.findall(r'\w*oo\w*', text)print(s)#['JGood', 'cool']# re.compile# 可以把正则表达式编译成一个正则表达式对象。# 可以把那些经常使用的正则表达式编译成正则表达式对象,这样可以提高一定的效率。
text ="JGood is a handsome boy, he is cool, clever, and so on..."
regex = re.compile(r'\w*oo\w*')print(regex.findall(text))#查找所有包含'oo'的单词print(regex.sub(lambda m:'['+ m.group(0)+']', text))#将字符串中含有'oo'的单词用[]括起来