PYTHON-模块 sys os random shutil
import sys # 环境变量
# print(sys.path)
# # 查看已经加载的模块
# print(sys.modules)
# # 获取终端调用时的参数
# print(sys.argv)
# # 获取解释器的版本信息
# print(sys.version)
# # 当前平台名称
# print(sys.platform)
# sys.exit(0)
# print("moximoxi") # 终端版复制文件工具
# 源文件路径
# source = sys.argv[1]
# print(source)
# # 目标文件路径
# dispath = sys.argv[2]
# with open(source,"rb") as f:
# data = f.read()
# with open(dispath, "wb") as f2:
# f2.write(data)
------------------------------------
import os
# os 主要用于与操作系统进行交互 # 获取当前的工作目录
# print(os.getcwd())
# 切换工作目录
# os.chdir("H:\PYTHON-DUJUN\day20\解压")
# print(os.getcwd()) # 当前目录 是一个点
# print(os.curdir)
# 上一级目录 两个点
# print(os.pardir) # # 系统的环境变量
# print(os.environ)
# print(os.system("dir")) # 掌握
# print(os.makedirs("aa/b/c")) # 创建目录 可用递归创建
# print(os.mkdir("aa45")) # 创建一个目录
# os.removedirs("aa/b/c") # 递归删除 如果没有文件就删掉 有文件则保留
# os.rmdir("aa45") # 删除一个目录 # os.remove(r"H:\PYTHON-DUJUN\day20\aa\b\c/ttt") # 删除文件 仅能删除文件
# print(os.listdir(r"H:\PYTHON-DUJUN\day20")) # 列出所有文件和文件夹名称
# print(os.sep) # 获取当前平台的路径分隔符
# print(os.linesep,end="") # 获取当前平台换行符 from os import path
# print(path.abspath("tt/a.txt")) # 返回绝对路径
# print(path.split("a/b/c.txt")) # 将路径拆分为 文件夹路径和文件名称
# print(path.dirname(__file__)) # 获取路径中的上一级
# print(path.basename(r"H:\PYTHON-DUJUN\day20\4.os模块.py")) # 获取最后一级名称
# print(path.exists("H:\PYTHON-DUJUN\day20\4.os模块.py")) # 判断路径是否存在
# print(path.isabs("C://a/b/c")) # 判断是否使绝对路径 linux下第一个是/就是绝对 win 盘符开始就是绝对
print("xx".join(["1","2","3","4"])) # 字符拼接
print(path.join("C://","D://","a","b","c")) # 将多个名称拼接为路径 如果有多个起始符 取最后一个
print(path.getsize(r"H:\PYTHON-DUJUN\day20\4.os模块.py"))
print(path.normcase("AA/BB\\CC//")) # 大写变小写 斜杠根据当前平台修改
print(path.normpath("AA/BB\\CC//DD/..//EE")) # 斜杠会修改为当前平台的分隔符 可用执行..来返回上一级 import os
# 直接写死不能跨平台 尽量使用下面两种
# DB_PATH = r"H:\PYTHON-DUJUN\day20\aa\高根db.txt"
# LOG_PATH = r"H:\PYTHON-DUJUN\day20\aa\log.txt" # 第二种拼接方式 跨平台
# 先获取当前路径
BASE_DIR2 = os.path.dirname(os.path.dirname(__file__))
LOG_PATH2 = os.path.join(BASE_DIR2,"log","log.txt")
LOG_PATH2= os.path.join(BASE_DIR2,'log.txt')
print(BASE_DIR2)
print(LOG_PATH2) # 第三种拼接方式 跨平台
print(os.path.normpath(__file__))
print(os.path.normpath(os.path.join(__file__,'..','..','log','log.txt'))) DB_URL = "127.0.0.1"
USER = "root"
PWD = "123"
---------------------------------
import random
# 随机数模块 # print(random.random()) #0-1 不包括1随机浮点数
# print(random.randint(1,10)) # 1-10 包括1和10 的整数
# print(random.randrange(1,10)) # 1-10包括1 不包括10的整数
print(random.sample(["aaa",["a","b"],3,4,5],2)) # 指定一个范围并指定需要的随机个数 # ls = ["1","2","3","4"]
# random.shuffle(ls) # 打乱顺序 洗牌 改的原有列表
# print(ls)
# print(random.choice([1,2,3])) # 随机选一个
# print(random.choices([1,2,3,4,5,6,7],k=2)) # 随机选指定个数 # 随机验证码 长度自定义 包括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(4)) # print(random.uniform(1,3)) # 两边都包含的随机浮点数
--------------------
import shutil
# 用于简化文件操作的模块
# f1 = open(r"D:\上海python全栈4期\day20\7.shutil模块.py","rb")
# f2 = open(r"D:\上海python全栈4期\day20\7.shutil模块2.py","wb")
# shutil.copyfileobj(f1,f2) # 压缩文件
# shutil.make_archive('TTL','zip',r'H:\PYTHON-DUJUN\day20')
# shutil.make_archive('TTL','tar',r'H:\PYTHON-DUJUN\day20') # 用shutil直接解压
# shutil.unpack_archive(r"H:\PYTHON-DUJUN\day20\TTL.zip") # 解压 可以使用对应的模块来完成
# import zipfile
# z = zipfile.ZipFile(r"D:\上海python全栈4期\day20\my压缩.zip","r") #打开文件
# z.extractall(path=r"D:\上海python全栈4期\day20\解压") #提取文件
# z.close() # 关闭文件 # import tarfile
# t = tarfile.open(r"D:\上海python全栈4期\day20\my压缩.tar","r")
# t.extractall(r"D:\上海python全栈4期\day20\解压")
# t.close() # import tarfile
# t = tarfile.open(r"D:\上海python全栈4期\day20\you压缩.tar","w")
# t.add("1.昨日回顾")
# t.add("2.今日内容")
# t.close() # import zipfile
# z = zipfile.ZipFile(r"D:\上海python全栈4期\day20\you压缩.zip","w")
# z.write("1.昨日回顾")
# z.write("2.今日内容")
# z.close() import shutil
# 用于简化文件操作的模块
# f1 = open(r"D:\上海python全栈4期\day20\7.shutil模块.py","rb")
# f2 = open(r"D:\上海python全栈4期\day20\7.shutil模块2.py","wb")
# shutil.copyfileobj(f1,f2) # 压缩文件
# shutil.make_archive("my压缩","zip",r"D:\上海python全栈4期\day20") # shutil.make_archive("my压缩","tar",r"D:\上海python全栈4期\day20\pack") # 解压 需要使用对应的模块来完成
# import zipfile
# z = zipfile.ZipFile(r"D:\上海python全栈4期\day20\my压缩.zip","r")
# z.extractall(path=r"D:\上海python全栈4期\day20\解压")
# z.close() import tarfile
# t = tarfile.open(r"D:\上海python全栈4期\day20\my压缩.tar","r")
# t.extractall(r"D:\上海python全栈4期\day20\解压")
# t.close()
PYTHON-模块 sys os random shutil的更多相关文章
- python---基础知识回顾(四)(模块sys,os,random,hashlib,re,序列化json和pickle,xml,shutil,configparser,logging,datetime和time,其他)
前提:dir,__all__,help,__doc__,__file__ dir:可以用来查看模块中的所有特性(函数,类,变量等) >>> import copy >>& ...
- Python常用模块sys,os,time,random功能与用法,新手备学。
这篇文章主要介绍了Python常用模块sys,os,time,random功能与用法,结合实例形式分析了Python模块sys,os,time,random功能.原理.相关模块函数.使用技巧与操作注意 ...
- python内置模块[sys,os,os.path,stat]
python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返 ...
- python 模块之os.path模块
# -*- coding: cp936 -*- #python 27 #xiaodeng #python 模块之os.path模块 #http://www.cnblogs.com/dkblog/arc ...
- python模块之os sys shutil
os模块 os模块是与操作系统交互的一个接口 #当前执行这个python文件的工作目录相关的工作路径 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir( ...
- python常用模块collections os random sys
Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python 代码段. 把相关的代码 ...
- 第二十天 模块 sys os os下path settings random shuit
一.sys模块 1.sys.argv 命令行参数List,第一个元素是程序本身路径 2.sys.exit(n) 退出程序,正常退出时exit(0) 3.sys.version 获取Pythonn解释程 ...
- Python之文件与目录操作及压缩模块(os、shutil、zipfile、tarfile)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...
- python模块(os,sys,hashlib,collections)
列出目录下所有文件 os.listdir('dirname'):列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式返回. 创建文件夹: os.mkdir('文件夹') 创建文件夹 os ...
随机推荐
- 2018.9南京网络预选赛(J)
传送门:Problem J https://www.cnblogs.com/violet-acmer/p/9720603.html 变量解释: need[ i ] : 第 i 个房间含有的旧灯泡个数. ...
- Div里超出部分,省略号显示
1.一行显示并出现省略号 1)三个属性: overflow: hidden; text-overflow: ellipsis; white-space: nowrap; overflow: hidde ...
- 5G时代的到来,会给生活带来什么改变?
本文首发于:风云社区. 据百度百科介绍,5G网络是第五代移动通信网络,其峰值理论传输速度可达每秒数十Gb,比4G网络的传输速度快数百倍.举例来说,整部超高画质电影可在1秒之内下载完成. 5G网络已 ...
- Hive记录-hive权限控制
在使用Hive的元数据配置权限之前必须现在hive-site.xml中配置两个参数,配置参数如下: <property> <name>hive.security.authori ...
- ibatis (mybatis) for循环拼接语句【转】
使用 , 拼接 查询条件dto public class queryCondition{ private String[] stuIds; private String name;} 查询sqlMap ...
- 【C++ STL】Set和Multiset
1.结构 set和multiset会根据特定的排序原则将元素排序.两者不同之处在于,multisets允许元素重复,而set不允许重复. 只要是assignable.copyable.comparab ...
- java中数据字典的使用:
数据字典:数据库中一个字段下存在多个值的情况(type:1:肉类 2:素菜类 3:服装类): 分析: 1:这种情况下往往需要新建一张表来对应type下面的字段,通常以---表名--字段名---字段 ...
- web中的乱码处理
1 .web中的中文乱码处理 1.页面设置pageEncoding="UTF-8" <%@ page contentType="text/html;charset= ...
- 关于Meta标签的一些知识
1.定义文档的编码格式(H5的标准写法) <meta charset="UTF-8"> 2.声明指定的浏览器以及版本 <meta http-equiv=" ...
- C# 窗体内有子控件时鼠标检测
public partial class FormPop : Form { public FormPop() { InitializeComponent(); } private void FormP ...