Day14 Python基础之os/sys/hashlib模块(十二)

os模块


os.getcwd()   #获取当前工作路径


os.chdir(‘dirname1/dirname2/dirname3’)  #改变当前脚本的工作路径,相当于cmd下的cd


os.makedirs(‘dirname1/dirname2/dirname3’)  #生成多层递归目录

os.makedir('dirname')  #生成单级目录


os.curdir  #当前目录('.') 

os.pardir  #获取当前目录的父目录字符串名字('..')


os.rmdirs('dirname1/dirname2')  #若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推

os.rmdir('dirname')  #删除单级空目录,若目录不为空则无法删除,报错,相当于shell中的rmdir dirname


os.listdir(r'绝对路径')  #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印

注:r是原生字符的意思(raw),指把所有的字符串看做没有特殊含义的 


os.remove()  #删除一个文件(只能删文件不能删除文件夹)


os.rename('oldname','newname')  #重命名文件或目录

:abc.txt和abc是两个不同的文件


 os.state('path/filename')  #获取目录或文件的信息

:st_atime=1528895787, st_mtime=1528895787,分别是最后一次访问的时间和最后一次修改的时间


os.sep  #输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"    s=os.sep;E:s python_fullstack_code s week1 s test.py

os.linesep #输出当前操作系统的换行终止符 ,win下为"\r\n",Linux下为"\n"

os.pathsep #输出用于区分文件路径的字符串,win下是‘;’,linux下是‘:’ 


os.system('bash command')#运行shell命令(dir,config等等命令)直接显示 


os.environ  #获取系统环境变量


os.path.abspath(path)  #返回path规范下的路径 

os.path.split(path)  #将path分割成目录和文件名二元组返回

os.path.dirname(path)  #返回path的目录.q其实就是os.path.split(path)的第一个元素 

os.path.basename(path)  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素 

os.path.exists(path)  如果path存在,返回True;如果path不存在,返回False 

os.path.isabs(path)  如果path是绝对路径,返回True 

os.path.isfile(path)  如果path是一个存在的文件,返回True。否则返回False 

os.path.isdir(path)  如果path是一个存在的目录,则返回True。否则返回False 

os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 

os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间 

os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间


sys模块(与python解释器进行交互的操作)


 sys.argv  #命令行参数list,第一个元素是程序本身路径 

 1 import sys
 2 def post():
 3     print('上传功能')
 4 def download():
 5     print('下载功能')
 6 print(sys.argv)
 7 if sys.argv[1]=='post':
 8     post()
 9 elif sys.argv[1]=='download':
10     download()
sys.srgv

 在cmd窗口调用:

  


  sys.exit(n)  #退出程序,exit(0)是正常参数


  sys.path  #返回模块的搜索路径,初始化时使用PATHONPATH环境变量的值  


  sys.platform  #返回操作系统名称(用途:实现跨平台的判断,已确定正确的命令格式)


hashlib模块(加密操作)


 hashlib.md5() 

 1 import  hashlib
 2 m=hashlib.md5()
 3 print(m)
 4 m.update('hello world'.encode('utf-8'))
 5 print(m.digest())   #digest方法取出加密后的值
 6 print(m.hexdigest())    #hexdigest方法将加密后的值以十六进制显示
 7 
 8 输出结果:
 9 <md5 HASH object @ 0x010A7608>
10 5eb63bbbe01eeed093cb22bb8f5acdc3
11 b'^\xb6;\xbb\xe0\x1e\xee\xd0\x93\xcb"\xbb\x8fZ\xcd\xc3'
hashlib.md5
 1 import  hashlib
 2 m=hashlib.md5()
 3 print(m)
 4 m.update('hello world'.encode('utf-8'))
 5 print(m.hexdigest())    #hexdigest方法将加密后的值以十六进制显示
 6 m.update('alex'.encode('utf-8'))
 7 print(m.hexdigest())    #hexdigest方法将加密后的值以十六进制显示
 8 等价于
 9 m2=hashlib.md5()
10 m2.update('hello world alex'.encode('utf-8'))
11 print(m.hexdigest())
12 
13 输出结果:
14 5eb63bbbe01eeed093cb22bb8f5acdc3
15 82bb8a99b05a2d8b0de2ed691576341a
16 82bb8a99b05a2d8b0de2ed691576341a
加密更新

hashlib.sha256

1 import  hashlib
2 m=hashlib.sha256()
3 m.update('hello world'.encode('utf-8'))
4 print(m.hexdigest())
5 输出结果:
6 b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
sha256

 

 

 

 

猜你喜欢

转载自www.cnblogs.com/weinapang/p/9179700.html
今日推荐