python模块 os&sys&subprocess&hashlib模块
os模块
# os模块可根据带不带path分为两类
# 不带path
print(os.getcwd()) # 得到当前工作目录
print(os.name) # 指定你正在使用的操作系统,windows为nt,linux为“posix"
os.shell() # 运行shell命令
print(os.environ) # 返回操作系统所有的环境变量
print(os.getenv("home")) # 读取指定环境变量的值
os.environ.setdefault("home","c:\windows")
print(os.linesep) # 给出当前系统的行中止符,Windows使用'\r\n',Linux and MAC使用'\n'
print(os.listdir()) # 返回指定目录下的所有文件和目录名,默认当前目录下。
os.remove() # 删除指定的文件
os.mkdir() # 创建一个目录
os.makedirs(r"d:\11\22") # 创建多级目录
os.removedirs(r"d:\11\22") # 删除多级目录,目录不为空时报错,删除后上级目录为空的话继续删除
os.rename("old","new")
print(os.stat("time模块.py")) #获取文件属性
os.chmod() # 修改文件权限与时间戳
os.chdir(dirname) # 修改工作目录到dirname
os.get_terminal_size() # 获取当前终端的大小
os.kill(10884,signal.SIGKILL) # 杀死进程
# 带path
os.path.abspath() # 获取绝对路径
os.path.dirname() # 获取路径名
os.path.basename() # 获取文件名
os.path.getsize() # 获取文件大小
os.path.split() # 获取一个路径的目录名与文件名 e.g os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')
os.path.splitext() # 分离扩展名 e.g os.path.splitext('/usr/local/test.py') 结果:('/usr/local/test', '.py')
os.path.join(dir,filename) #结合目录名与文件名
os.path.isfile() # 判断是否是一个文件
os.path.isdir() # 判断是否是一个目录
os.path.isabs() # 判断是否是绝对路径
os.path.exists() # 判断给出的路径是否真的存在
sys模块
sys.argv # 命令行参数List,第一个元素是程序本身路径
sys.exit(n) # 退出程序,正常退出时exit(0)
sys.version # 获取Python解释程序的版本信息
sys.maxint # 最大的Int值
sys.path # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform # 返回操作系统平台名称
sys.stdout.write('please:') # 标准输出 , 引出进度条的例子, 注,在py3上不行,可以用print代替
val = sys.stdin.readline()[:-1] # 标准输入
sys.getrecursionlimit() # 获取最大递归层数
sys.setrecursionlimit(1200) # 设置最大递归层数
sys.getdefaultencoding() # 获取解释器默认编码
sys.getfilesystemencoding # 获取内存数据存到文件里的默认编码
subprocess模块
hashlib模块
# 用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法
import hashlib
c = hashlib.sha1()c.update("admin".encode("utf8"))print(s.hexdigest())print(s.digest()) # 以上加密算法虽然依然非常厉害,但时候存在缺陷,即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。
s = hashlib.md5(bytes("451sdhjshdjs",encoding="utf-8"))
s.update(bytes("admin", encoding="utf-8"))
print(s.hexdigest()) # python内置还有一个 hmac 模块,它内部对我们创建 key 和 内容 进行进一步的处理然后再加密
import hmac
h = hmac.new(bytes("shsh55", encoding="utf-8"))
h.update(bytes("admin", encoding="utf-8"))
print(h.hexdigest())
python模块 os&sys&subprocess&hashlib模块的更多相关文章
- python 正则,os,sys,hashlib模块
简单的小算法 random随机获取数据 import random def getrandata(num): a=[] i= while i<num: a.append(random.randi ...
- 6 - 常用模块(os,sys,time&datetime,random,json&picle,shelve,hashlib)
导入模块 想使用 Python 源文件,只需在另一个源文件里执行 import 语句 import module1[, module2[,... moduleN] from语句让你从模块中导入一个指定 ...
- Python模块 - os , sys.shutil
os 模块是与操作系统交互的一个接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录: ...
- Python常用模块os & sys & shutil模块
OS模块 import os ''' os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录: ...
- (转)python之os,sys模块详解
python之sys模块详解 原文:http://www.cnblogs.com/cherishry/p/5725184.html sys模块功能多,我们这里介绍一些比较实用的功能,相信你会喜欢的,和 ...
- python基础四(json\os\sys\random\string模块、文件、函数)
一.文件的修改 文件修改的两种思路: 1.把文件内容拿出来,做修改后,清空原来文件的内容,然后把修改过的文件内容重新写进去. 步骤: 1.打开文件:f=open('file','a+') #必须用a ...
- Python基础之模块:6、hashlib模块 subprocess模块 logging模块
目录 一.hashlib模块 1.简介 2.基本操作与用法 二.subprocess模块 1.简介 2.基本操作与用法 三.logging模块 1.简介 2.基本操作与用法 一.hashlib模块 1 ...
- python基础之 序列化,os,sys,random,hashlib
1.序列化 定义: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然 ...
- python基础 (序列化,os,sys,random,hashlib)
1.序列化 定义: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然 ...
随机推荐
- classic code review
package dao; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSe ...
- introduce of servlet and filter
servlet简介: Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中 ...
- ssm项目导入activiti依赖后jsp页面el表达式报错
错误原因:Tomcat8.x与activiti6.0依赖冲突导致 解决方法: 1.修改tomcat版本 2.在pom.xml中修改 在依赖中把 <dependency> <group ...
- Python基础:十、用户交互
使用input()函数,可以让我们和计算机互动起来 a. 等待输入 b. 将输入的内容赋值给前面的变量 c. input()接受到的内容永远是字符串 变量 = input("提示信息&quo ...
- django中云存储静态文件
Django自带文件存储系统存储在本地文件夹,如果我们将文件存储在云端,需要自定义文件存储系统. 自定义文件存储系统需要继承django.core.files.storage.Storage from ...
- day-09内存管理
内存管理 引用计数:垃圾回收机制的依据 # 1.变量的值被引用,该值的引用计数 +1# 2.变量的值被解绑,该值的引用计数 -1# 3.引用计数为0时就会被垃圾回收机制回收 引用计数会出现循环引用问 ...
- Noname
版本: LayaAir IDE 2.0.1beta laya.core.js ___Laya ColorUtils LayaGLQuickRunner DrawTextureCmd Point Col ...
- layui select配合input实现动态模糊搜索
功能需求:select框可以自己输入,就是在下拉列表里找不到自己想要的选项就可以自己输入,同时还要支持模糊匹配功能 html代码: 样式: <style> .select-search-i ...
- Android环境下hanlp汉字转拼音功能的使用介绍
由于项目需要在Android手机设备上实现汉字转拼音功能(支持多音字),于是首先想到了Pinyin4j+多音字映射对照表的实现方案,并在项目中试用了一段时间,发现数据量大时,其耗时非常严重.后来寻找其 ...
- centos7 时间自动同步
设置开机自动同步Internet时间,并作定时同步任务1.修改时区 rm -rf /etc/localtime ln -s /usr/share/zoneinfo/Asia/Shanghai /etc ...