os与操作系统进行交互,sys解释器相关,random随机数,shutil解压和压缩
1.os
与操作系统相关
对文件的处理
对路径的处理
import os#主要用于与操作系统进行交互
掌握:
print(os.makedirs('a/b/c'))#创建目录 可用递归创建
print(os.mkdir('AA'))#创建一个目录,名字中不能加/
os.removedirs('a/b/c')#递归删除,如果没有文件删除,有文件则保留
os.rmdir('AA')#删除一个目录
os.remove(r'xx')#删除文件,仅仅能删除文件
os.listdir(r'xx')#列出所有文件和文件夹名称
os.rename('xx','xxx')#重命名文件/目录名
os.stat()
print(os.sep)#获取当前平台的路径分隔符
print(os.linesep,end='')#获取平当前台换行符 了解:
print(os.getcwd())#获取当前的工作目录
os.chdir('')#切换工作目录
print(os.curdir)#当前目录,是一个点
print(os.pardir)#上一级目录,两个点
print(os.environ)#系统的环境变量
print(os.system(‘xx’))运行sell,直接显示 from os import path
print(os.path.abspath('xx'))#返回绝对路径,对字符串操作文件不存在不会报错
print(os.path.split('a/d/f.txt'))#将路径拆分为目录和文件名,远组形式
print(os.path.dirname(__file__))#获取路径中的上一级
print(os.path.basename(__file__))#获取最后一级名称
print(os.path.exists(‘xx’))#判断路径是否存在
print(os.path.isabs('xxx'))#判断是否是绝对路径,linux/开头是绝对路径;
print(path.join('C:\\','D:\\','a','b','c'))#将多个名称拼接成路径,如果有多个起始符,取最后一个
print(os.path.getsize('xx'))#获取文件或文件夹字节数
print(os.path.normcase('AA/BB\\CC//'))#用于路径规范化 会将大写转换小写 斜杠转成当前系统分割符
print(os.path.normpath('AA/BB\\CC//DD/..//EE'))#斜杠会修改为当前平台分割符,可执行..来返回上一级后继续执行
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。 2.sys
解释器相关的信息
import sys
print(sys.path)#环境变量
print(sys.modules)#查看已经加载的模块
print(sys.argv)#获取终端调用时的参数 用空格隔开,在cmb中可直接执行
print(sys.version)#查看解释器的版本信息
sys.exit(0)程序无错正常运行
sys.exit(1)程序异常退出
#了解:
print(sys.api_Version)#接口版本
print(sys.maxsize)
print(sys.maxunicode)
print(sys.platform)#当前的平台名称 3.random
随机数模块
import random
print(random.random())#包含零到一之间的随机浮点数(不包含一)
print(random.randint(1,10))#1-10 包括10的整数
print(random.randrange(1,10))#1-10 不包含10 的整数
print(random.uniform(1,3))#两边都包含的随机浮点数
print(random.sample([1,2,4,5,78,'dd',6,],3))#指定一个范围,并指定一个随机个数
print(random.shuffle([1,2,4,5,78,'dd',6,]))#打乱顺序 洗牌 改的是原有列表
print(random.choice([1,2,3,4,6]))#在指定范围内随机取一个值
print(random.choices([1,2,3,45,5],k=3))#随机选指定个数 举例:
import random
#随机验证码 长度自定义 包括0-9 A-Z a-z
def get_auth_code(length):
res=''
for i in range(length):
a=random.randint(0,9)
b=chr(random.randint(65,90))
c=chr(random.randint(97,122))
s=random.choice([a,b,c])
res+=str(s)
return res
print(get_auth_code(5)) 4.shutil
用于操作文件
import shutil
#用于简化文件操作的模块
f1=open('bb.txt','rb')
f2=open(r'cc.txt','wb')
shutil.copyfileobj(f1,f2)#复制文件 解压和压缩
import shutil
#压缩
shutil.make_archive('my压缩','zip','D:\作业。10.12')
# 解压 可以对应模块来完成
import zipfile
z=zipfile.ZipFile(r'my压缩.zip','r')
#加path相当建立一个新的解压文件夹,什么都没有的话是直接解压到当前文件夹
z.extractall(path='解压')
z.close() #把文件整理压缩到一起
import tarfile
t=tarfile.open(r'D:\py_yingyong\my压缩.zip','w')
t.add('bb.txt')
t.add('cc.txt')
t.close()
#解压,建立一个叫做解压的文件夹 进行解压,如果出现同名不会报错也不会生成同名文件夹
import tarfile
t=tarfile.open(r'D:\py_yingyong\my压缩.zip','r')
t.extractall(r'D:\py_yingyong\my解压')
t.close()
#把文件的内容直接解压到当前文件夹,如果当前文件夹已有解压后文件名,则报错
import shutil
shutil.unpack_archive(r'D:\py_yingyong\my压缩.zip')
os与操作系统进行交互,sys解释器相关,random随机数,shutil解压和压缩的更多相关文章
- 第三十三节,sys解释器相关模块
首先要引入import sys模块 sys.argv 功能:获取向脚本文件传入的参数,返回的列表,列表里的第一个元素是脚本文件路径和名称,后面的元素是传入的向脚本传入的参数 使用方法:sys.argv ...
- python解压,压缩,以及存数据库的相关操作
zipfile实现压缩整个目录和子目录 import os,shutil,zipfile,glob def dfs_get_zip_file(input_path,result): # files = ...
- 常用内置模块(一)--time、os、sys、random、shutil、pickle、json
一.time模块 Python中,通常有这几种方式来表示时间: 1.时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“type( ...
- python常用模块:sys、os、path、setting、random、shutil
今日内容讲了3个常用模块 一.sys模块二.os模块三.os下path模块四.random模块五.shutil模块 一.sys模块 import sys #环境变量 print(sys.path) # ...
- (转)python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)
阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代 ...
- os模块+sys模块+random模块+shutil模块
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cdos.curdir ...
- 6 - 常用模块(os,sys,time&datetime,random,json&picle,shelve,hashlib)
导入模块 想使用 Python 源文件,只需在另一个源文件里执行 import 语句 import module1[, module2[,... moduleN] from语句让你从模块中导入一个指定 ...
- 常用内置模块(一)——time、os、sys、random、shutil、pickle、json
常用内置模块 一.time模块 在python中,时间分为3种 1.时间戳: timestamp,从1970年1月1日到现在的秒数, 主要用于计算两个时间的差 2.localtime ...
- Mac OS X操作系统常见快捷键集锦
Mac OS X操作系统常见快捷键集锦 启动时的快捷键 启动时按住 X 键 : 强制从 Mac OS X 启动(适用于那些在同一宗卷上安装了 Mac OS X 和 Mac OS 9 双系统的 Mac ...
随机推荐
- FBI树(第一次做建树题)
试题来源 NOIP2004 普及组 问题描述 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串. FBI树是一种二叉树,它的结 ...
- shiro中记住我功能
Shiro提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下: 1.首先在登录页面选中Reme ...
- Leetcode 980. 不同路径 III
980. 不同路径 III 显示英文描述 我的提交返回竞赛 用户通过次数42 用户尝试次数43 通过次数46 提交次数60 题目难度Hard 在二维网格 grid 上,有 4 种类型的方格: 1 ...
- Mybatis异常There is no getter for property named 'XXX' in 'class java.lang.String'
1.当入参为 string类型时 (包括java.lang.String.) 我们使用#{xxx}引入参数.会抛异常There is no getter for property named 'XX ...
- 15. 3Sum C++
参考资料: https://leetcode.com/problems/3sum/discuss/7402/Share-my-AC-C%2B%2B-solution-around-50ms-O(N*N ...
- 在ubuntu14中搭建邮箱服务器
1.前提准备 1.1在服务器上安装ubuntu14 1.2为ubuntu14配置静态ip 使用命令 sudo vim /etc/network/interfaces打开配置文件 修改内容如下: 使用命 ...
- FJUT16级第一周寒假作业题解G题
题目链接:http://210.34.193.66:8080/vj/Contest.jsp?cid=160#P6 涨姿势题1 TimeLimit:1000MS MemoryLimit:128000K ...
- CentOS中/英文环境切换教程(CentOS6.8)
一.前言 对于不习惯英文的人可能想将系统由英文转成中文:而对于考虑客户端如果没正确配置,中文目录可能显示为乱码的人则可能宁愿将系统由中文转成英文. 中文切换为英文,实际就是将LANG的值由zh_CN- ...
- WebSphere静默安装教程(WAS6.1为例)
1.安装WebSphere 解压守装包: tar -zxf was_soft_64-bit.tar.gz 进入解压出的WAS目录编缉responsefile.nd.txt,将对应选项修值改成以下模样( ...
- Linux用户创建/磁盘挂载相关命令
命令 作用 常用参数说明 groupadd 增加用户组 -g指定组id groupmod 修饰用户组 参数和groupadd类似 groupdel 删除用户组 直接组名没参数 useradd 增加用户 ...