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,第一个元素是程序本身路径
import sys
def post():
print('上传功能')
def download():
print('下载功能')
print(sys.argv)
if sys.argv[1]=='post':
post()
elif sys.argv[1]=='download':
download()
sys.srgv
在cmd窗口调用:

sys.exit(n) #退出程序,exit(0)是正常参数
sys.path #返回模块的搜索路径,初始化时使用PATHONPATH环境变量的值
sys.platform #返回操作系统名称(用途:实现跨平台的判断,已确定正确的命令格式)
hashlib模块(加密操作)
hashlib.md5()
import hashlib
m=hashlib.md5()
print(m)
m.update('hello world'.encode('utf-8'))
print(m.digest()) #digest方法取出加密后的值
print(m.hexdigest()) #hexdigest方法将加密后的值以十六进制显示 输出结果:
<md5 HASH object @ 0x010A7608>
5eb63bbbe01eeed093cb22bb8f5acdc3
b'^\xb6;\xbb\xe0\x1e\xee\xd0\x93\xcb"\xbb\x8fZ\xcd\xc3'
hashlib.md5
import hashlib
m=hashlib.md5()
print(m)
m.update('hello world'.encode('utf-8'))
print(m.hexdigest()) #hexdigest方法将加密后的值以十六进制显示
m.update('alex'.encode('utf-8'))
print(m.hexdigest()) #hexdigest方法将加密后的值以十六进制显示
等价于
m2=hashlib.md5()
m2.update('hello world alex'.encode('utf-8'))
print(m.hexdigest()) 输出结果:
5eb63bbbe01eeed093cb22bb8f5acdc3
82bb8a99b05a2d8b0de2ed691576341a
82bb8a99b05a2d8b0de2ed691576341a
加密更新
hashlib.sha256
import hashlib
m=hashlib.sha256()
m.update('hello world'.encode('utf-8'))
print(m.hexdigest())
输出结果:
b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
sha256
Day14 Python基础之os/sys/hashlib模块(十二)的更多相关文章
- python基础语法11 内置模块time,datatime,random,os,sys,hashlib模块
time模块 在python的三种时间表现形式: 1.时间戳: 给电脑看的. - 自1970-01-01 00:00:00到当前时间,按秒计算,计算了多少秒. 2.格式化时间(Format Strin ...
- python基础 (序列化,os,sys,random,hashlib)
1.序列化 定义: JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然 ...
- python基础之re,sys,suprocess模块
re 正则表达式 1.什么是正则? 正则就是用一系列具有特殊含义的字符组成的规则,该规则用来描述具有某一特征的字符串. 正则就是用来在一个大的字符串匹配出符合规则的子字符串 2.为什么用正则? 正则可 ...
- oldboy edu python full stack s22 day16 模块 random time datetime os sys hashlib collections
今日内容笔记和代码: https://github.com/libo-sober/LearnPython/tree/master/day13 昨日内容回顾 自定义模块 模块的两种执行方式 __name ...
- 序列化,os,sys,hashlib,collections
序列化,os,sys,hashlib,collections 1.序列化 什么是序列化?序列化的本质就是将一种数据结构(如字典,列表)等转换成一个特殊的序列(字符串或者bytes)的过程就叫做序列化. ...
- Python常用模块(time, datetime, random, os, sys, hashlib)
time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp) : 通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运 ...
- Python基础(11)_python模块之time模块、rando模块、hashlib、os模块
一.模块 1.什么是模块:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀 模块的本质:模块的本质是一个py文件 2.模块分为三类:1)内置模块:2)第三方模块: ...
- time,datetime,random,os,sys,hashlib,logging,configparser,re模块
#-----time模块----- print(help(time)) #打印time帮助文档 print(time.time()) #打印时间戳 1569824501.6265268 time.sl ...
- 模块之 time datetime random json pickle os sys hashlib collections
目录 1. time模块 1.1表示时间的几种方式: 1.2格式化字符串的时间格式 1.3不同格式时间的转换 2.datetim模块 3.random模块 4. json模块 4.1dumps.loa ...
随机推荐
- sqlserver备份
/// <summary> /// sqlserver备份 /// </summary> public class SqlserverBack : IBack { privat ...
- c/c++ 标准库 map set 插入
标准库 map set 插入 一,插入操作 有map如下: map<string, size_t> cnt; 插入方法: 插入操作种类 功能描述 cnt.insert({"abc ...
- 3. svg学习笔记-基本形状和画笔属性
svg中可以绘制的基本图形有线段,矩形,多边形,圆,椭圆,分别来看一下这些基本图形: 线段 使用<line>元素创建一条线段,格式如下: <line x1=" start- ...
- 如何修改discuz论坛的图像地址
今天帮别人修改discuz论坛,遇到一个问题,就是图像显示不出来,按F12键后,发现是自己的图像路径设置有问题,于是就要去修改这个设置路径了.有两种方法: 一,直接修改配置文件,打开config/co ...
- LeetCode算法题-Pascal's Triangle(Java实现)
这是悦乐书的第170次更新,第172篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第29题(顺位题号是118).给定非负整数numRows,生成Pascal三角形的第一个 ...
- 【Java多线程通信】syncrhoized下wait()/notify()与ReentrantLock下condition的用法比较
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6556925.html 一:syncrhoized使用同一把锁的多个线程用通信实现执行顺序的调度 我们知道,使 ...
- js格式化输入框内金额、银行卡号[转]
这篇文章主要介绍了js格式化输入框内金额.银行卡号,采用“keyup”事件处理格式化,每4位数一组中间空格隔开,如何格式化输入框内金额.银行卡号,需要了解的朋友可以参考一下 我们在项目中经常遇到需要格 ...
- C. Queen Codeforces Round #549 (Div. 2) dfs
C. Queen time limit per test 1 second memory limit per test 256 megabytes input standard input outpu ...
- Scrapy 框架 中间件 代理IP 提高效率
中间件 拦截请求跟响应 进行ua(User-Agent ) 伪装 代理 IP 中间件位置: 引擎 和下载器 中间 的中间件 ( 下载中间件) 引擎 跟 spider 中间 的中间件 ( 爬虫中间件)( ...
- UVA12265-Selling Land(单调栈)
Problem UVA12265-Selling Land Accept: 137 Submit: 782Time Limit: 3000 mSec Problem Description Inpu ...