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 ...
随机推荐
- VS快捷键失效问题
VS作为宇宙最强IDE,为我们提供了强大的快捷键组合,熟练的使用这些快捷键能极大提高我们的编码效率,但是在我们实际使用的过程中经常会遇到某个快捷键组合失效的问题. 问题原因: 一般都是VS的快捷键与电 ...
- 使用 dep 配置 golang 开发环境
概要 golang 的包管理一直没有官方统一的解决方案,因此也产生了很多非官方的包管理工具. 之前我一直使用的 gb(https://getgb.io/) 能够很好的隔开各个 golang 工程,当时 ...
- 团队作业——Alpha冲刺
团队作业--Alpha冲刺 时间安排及内容要求 时间 内容 11.1-11.16 12次 Scrum 11.16-11.20 测试报告 与 用户反馈 11.21-11.24 展示博客 11.25 课堂 ...
- IT部门不应该是一个后勤部门
管理上最大的问题在于不重视预算与核算的管理.从管理层到员工,很少有经营的念头,只是一味地埋头做事.西方企业总结了当今几百年的经营理念,最终把企业一切活动的评价都归结到唯一的.可度量的标准上:钱来度量. ...
- js屏蔽/过滤 特殊字符,输入就删除掉,实时删除,
原文:http://niuxiaoxia870563296.iteye.com/blog/1828189 1.替换方法: <input type="text" class=& ...
- 如何合并列表中key相同的字典?
现有list: list1 = [{a: 123}, {a: 456},{b: 789}] 合并成: list2 = [{a: [123,456]},{b: [789]}] from collecti ...
- 【转】JS中setTimeout和setInterval的最大延时值详解
前言 JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成.而这篇文中主要给大家介绍的是关于JS中setTi ...
- python的格式化输出
Python的格式化输出有两种: 一.类似于C语言的printf的方法 二.类似于C#的方法
- 微信硬件平台(一) 公众号 ESP8266 Arduino LED
微信硬件平台 本文目的,使用微信公众号控制ESP8266的LED开和关.进一步使用微信当遥控器(避免写APP或者IOS或者小程序),控制一切设备.给两个关键的总教程参考. 官网教程 微信硬件平台 微 ...
- Control4系统对接arduino
https://www.chowmainsoft.com/arduino int digitalState[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; v ...