常用模块笔记

#导入OS模块
进口操作系统

#getcwd()获取当前工作目录
#result = os.getcwd()
#PRINT(结果)

#chdir()改变当前工作目录
#os.chdir( '/家庭/ huhongyi / PycharmProjects / python09 / 07')
#open( 'chdir.txt', 'W')

#注意:不推荐随意更改工作目录,如果有需要,建议直接写完整路径!

#listdir()获取指定文件夹种所有的文件和文件夹信息列表相当linux种的ls -a
#result = os.listdir('/ home / huhongyi')
#PRINT(结果)

#mkdir()制作一个文件夹
#os.mkdir( '女孩')
#os.mkdir( '男孩',0o000)#指定权限创建文件夹

#makedirs()递归创建文件
#os.makedirs( '达耶/ DAMA / wangguafu')

#rmdir()删除一个空文件夹只能删除空文件夹!
#os.rmdir( '女孩')

#removedirs()递归删除空文件夹
#os.removedirs( '达耶/ DAMA / wangguafu')

#rename()修改文件或者文件夹名称
#os.rename( '女孩', 'girls1000')
#os.rename( 'A.TXT', 'aaa.txt')

#stat()查看文件的元信息
#result = os.stat('abc.txt')
#PRINT(结果)

#system()执行系统命令命令由系统决定(慎重!)
#os.system('ping 127.0.0.1')

#获取系统环境变量(从系统中获取)
#result = os.getenv('PATH')
#PRINT(结果)

#设置环境变量(给当前页面临时设置)
#os.putenv( 'PATH', '/')#注意,添加的环境变量,无法获取

#使用os.system( 'HH')


#os模块种的值
#curdir当前文件夹。代表当前文件夹
#PRINT(os.curdir)
#open('./huhongyi.txt','w')#。/ huhongyi.txt等价与huhongyi.txt。可以省略


#pardir上一层文件夹
#PRINT(os.pardir)
#open('../ juzi.txt','w')#.. / juzi.txt等价与在上层文件夹下创建文件

#name获取系统标识窗口 - > nt mac / linux  - > posix
#PRINT(os.name)

#sep路径分割符号窗口 - > \ linix  - > /
#PRINT(os.sep)


#extsep文件后缀符号所有系统都是。
#PRINT(os.extsep)

#linesep换行符号窗口 - > \ r \ n linix  - > \ n mac  - > \ r或者\ n
#PRINT(再版(os.linesep))

#environ系统环境变量
#获取
#PRINT(os.environ [ 'PATH'])
#添加(临时设置当前页面)
#os.environ ['PATH'] + =':/'

#使用os.system( 'HH')






#os中的路径子模块
进口操作系统
打印(os.path中)

#abspath()将一个路径转化为绝对路径
path ='../abc.txt'#/ home / huhongyi / PycharmProjects / python09 / abc.txt
abspath = os.path.abspath(路径)
打印(ABSPATH)
“””
Linux的:
    绝对路径从根目录/开始书写的路径
    相对路径不是从根目录开始书写的路径,。或者..开始的路径
    
    
窗口:
    绝对路径从盘符(C:,D:....)开始书写的路径
    相对路径不是从根目录开始书写的路径,。或者..开始的路径
    
“””

#basename()获取路径种的主体部分
#dirname()获取路径种的路径部分
path ='/home/huhongyi/linzhiling/wohelaoshi.avi'
bname = os.path.basename(路径)
打印(BNAME)

dname = os.path.dirname(路径)
打印(DNAME)

#join()将两个路径合并为一个路径(不能都是绝对路径)
path1 ='abc / girls.avi'
path2 ='/ home / huhongyi / japan'

结果= os.path.join(path2,path1)
打印(结果)

#split()将路径切割为主题部分和叶路径部分组成的元组

path ='/home/huhongyi/linzhiling/wohelaoshi.avi'
结果= os.path.split(路径)
打印(结果)


#splitext()切割文件后缀!
path ='/home/huhongyi/linzhiling/wohelaoshi.avi'
result = os.path.splitext(路径)
打印(结果)

#getsize()获取文件的大小
result = os.path.getsize('./ 01.py')
打印(结果)

#isfile()检测一个路径是否是一个文件

#isdir()检测一个路径是否是一个目录

#islink()检测一个路径是否是一个链接
path ='/ vmlinuz'

结果= os.path.isfile(路径)
打印(结果)

结果= os.path.isdir(路径)
打印(结果)

结果= os.path.islink(路径)
打印(结果)


#获取文件时间的三个函数
#getctime()获取文件的创建时间
#getmtime()获取文件的修改时间
#getatime()获取文件的访问时间

result = os.path.getctime('/ hh')
打印(结果)

result = os.path.getmtime('/ hh')
打印(结果)

result = os.path.getatime('/ hh')
打印(结果)

#exists()检测文件或者路径是否存在
result = os.path.exists('/ home')
打印(结果)

#isabs()检测一个路径是否是绝对路径
路径='/家/ huhongyi / xiaoling'
结果= os.path.isabs(路径)
打印(结果)

#samefile()检测两个路径是否指向同一个文件或这个目录
path1 ='/ home / huhongyi / PycharmProjects'
path2 ='../../'

result = os.path.samefile(path1,path2)
打印(结果)


#计算文件夹大小的函数
进口操作系统

def getdirsize(dirname):
    #设置一个局部变量用于统计当前文件夹的大小
    总数= 0
    #遍历当前文件夹种的所有内容
    allname = os.listdir(dirname)
    #遍历所有名称,拼出绝对路径
    以allname命名:
        #拼和路径
        filename = os.path.join(dirname,name)
        #检测是文件还是文件夹还是链接
        如果os.path.isfile(文件名):
            #PRINT(文件名, '是一个文件')
            总数+ = os.path.getsize(文件名)
        elif os.path.islink(文件名):
            #PRINT(文件名, '是一个链接')
            总数+ = os.path.getsize(文件名)
        elif os.path.isdir(文件名):
            #PRINT(文件名, '是一个目录')
            总数+ = getdirsize(文件名)

    #结尾怎么写
    总回报


#调用函数
dx = getdirsize('/ home / huhongyi / PycharmProjects / python09')
打印(DX)

#高级文件模块
进口shutil

#copy()复制文件或者目录
#result = shutil.copy('/ bin / bash','/ home / huhongyi / bash')
#PRINT(结果)

#copy2()复制文件或者目录,保留元数据
#result = shutil.copy2('/ bin / bash','/ home / huhongyi / bash')
#PRINT(结果)


#copyfileobj()拷贝文件内容
#fp1 = open('/ bin / ls','rb')
#fp2 = open('/ home / huhongyi / myls','wb')
#result = shutil.copyfileobj(fp1,fp2,length = 256)#length设置字节流长度,防止蓝屏终机 
#PRINT(结果)

#copyfile()拷贝文件内容相当于用r读取用w打开
#result = shutil.copyfile('/ bin / bash','/ home / huhongyi / mybash')
#PRINT(结果)

#copytree()拷贝整个目录
#shutil.copytree( '/箱', '/家庭/ huhongyi / mybin')

#copymode()拷贝权限
#shutil.copymode( '/家庭/ huhongyi /文件1', '/家庭/ huhongyi /文件2')

#copystat()将一个文件的源信息拷贝给另一个文件
#shutil.copystat( '/家庭/ huhongyi /下载/pycharm-community-2017.2.1.tar.gz','/home/huhongyi/myls')

#rmtree()删除整个目录
#shutil.rmtree( '/家庭/ huhongyi /箱')

#move()移动文件或者文件
#shutil.move( '/家庭/ huhongyi / mybash', '/家庭/ huhongyi /下载')
#shutil.move( '/家庭/ huhongyi /音乐', '/家/ huhongyi /下载')

#which()检测系统命令所在的目录
#result = shutil.which('ls')
#PRINT(结果)

#disk_usage()检测磁盘使用信息
result = shutil.disk_usage('/')
打印(结果)

#归档操作
进口shutil

#归档操作
#result = shutil.make_archive('/ home / huhongyi / mybin','tar','/ bin')
#PRINT(结果)

#解包操作
#result = shutil.unpack_archive('/ home / huhongyi / mybin.zip','/ home / huhongyi /下载')
#PRINT(结果)

#获取归档格式
#result = shutil.get_archive_formats()
#PRINT(结果)

#获取解包格式
#result = shutil.get_unpack_formats()
#PRINT(结果)


#tar压缩

导入tarfile

“””
#文件后缀:.tar.gz .tar.bz2 .tar.xz
#压缩操作
#打开压缩文件
tp = tarfile.open('./ mytar.tar','w:xz')
#PRINT(TP)
#添加文件
tp.add( '/家庭/ huhongyi / bash的', '庆典')
tp.add( '/家庭/ huhongyi / myls', '你/ YOURLS')

#关闭压缩文件
tp.close()
“””

#解压操作
#打开压缩文件
tp = tarfile.open('./ mytar.tar','r')

#解压文件
#所有
#tp.extractall( '/家庭/ huhongyi /模板')
#解压单个文件
tp.extract( '庆典', '/家庭/ huhongyi /视频')

#关闭压缩文件
tp.close()




#日历模块
导入日历

#calendar()输出指定年份的日历
“””
w设置日期之间的间隔字符默认是2
l设置行高默认是1
c设置月份之间的间隔字符数默认是6
m设置每行显示的月份默认是3

“””
#result = calendar.calendar(2018,w = 2,l = 1,c = 6,m = 2)
#PRINT(结果)

#month()获取指定年月的日历
#result = calendar.month(2018,4,w = 2,l = 2)
#PRINT(结果)


#monthcalendar()获取指定年月的矩阵格式列表
#result = calendar.monthcalendar(2018,3)
#PRINT(结果)

“””
[
    [0,0,0,1,2,3,4], 
    [5,6,7,8,9,10,11], 
    [12,13,14,15,16,17,18], 
    [19,20,21,22,23,24,25], 
    [26,27,28,29,30,31,0]
]

可以左记事本的项目

“””

#isleap()检测是否是润年
#润年的规则:如果不能够被100整除,那么只要是4的整数倍就是润年,如果能够被100整除,那么必须是400的整数被才是润年!

#result = calendar.isleap(1900)
#PRINT(结果)


#leapdays()检测指定年份之间有多少个润年
#result = calendar.leapdays(1900,2000)
#PRINT(结果)


#monthrange()获取月份的开始周几和一共多少天的信息元组0〜6表示周一到周天
#result = calendar.monthrange(2018,3)
#PRINT(结果)


#weekday()检测周几
#result = calendar.weekday(2018,6,1)
#PRINT(结果)

#timegm()将时间元组转化为时间戳
ttp =(1970,1,1,0,0,0,0,0,0)#时间元组

result = calendar.timegm(ttp)
打印(结果)



#时间戳
#1。从1970年1月1日0时0分0秒到指定时间经过的秒数
#2。从1970年年到2038年的某一天

#世界协调时间UTC时间
#UTC成为世界协调时间或者世界同一时间,地球时间

#夏令时
#和夏令营没有任何关系
#人为的将时间调快一个小时而已

#时间元组
#以元组的方式表示时间的一种格式而已
#(年,月,日,时,分,秒,周几,一年种的第几天,是否是夏令时状态)

#时间模块的三个值
进口时间

#timezone获取当前时区(差值的秒数)
打印(time.timezone)

#altzone获取当前时区(差值的秒数)夏令时状态下(linix无效)
打印(time.altzone)

#daylight检测是否夏令时状态
打印(time.daylight)

#asctime()获取时间字符串(英文字符串!)
#result = time.asctime()#默认当前时间
tp =(1997,7,1,0,0,0,0,0,0)
结果= time.asctime(tp)
打印(结果)


#localtime()获取[本地]的时间元组
#result = time.localtime()#默认使用当前的时间戳
result = time.localtime(0)#使用指定的时间戳
打印(结果)

#gmtime()将时间戳转化为时间元组格式(返回UTC时间)
#result = time.gmtime()#默认当前时间戳
result = time.gmtime(0)#使用指定的时间戳
打印(结果)


#sleep()程序睡眠/等待
#time.sleep(5)



#ctime()输出指定的时间字符串格式[英文] ctime = asctime(localtime(时间戳))
#result = time.ctime()#默认当前时间戳
result = time.ctime(0)#指定时间戳
打印(结果)

#mktime()制造时间戳(本地时间戳)UTC时间戳用日历种的timegm
ttp =(1970,1,1,0,0,0,0,0,0)
result = time.mktime(ttp)
打印(结果)


#time()获取当前的[本地]时间戳
result = time.time()
打印(结果)


#strftime()格式化时间字符串
#1999/12/23 4:23:1
#7/19/2018 5:32:12
#2018年2月2日下午5:23
“””
#时间元组
ttp =(2018,3,24,13,15,23,0,0,0)
#fstr ='%Y /%m /%d%H:%M:%S'
fstr ='%Y年%m月%d日%p%I:%M'

result = time.strftime(fstr,ttp)
打印(结果)
“””


#strptime()解析格式字符串
结果='2018年03月24日PM 01:15'
fstr ='%Y年%m月%d日%p%I:%M'

ttp = time.strptime(结果,fstr)
印刷(TTP)

猜你喜欢

转载自blog.csdn.net/dqshjq/article/details/80790682
今日推荐