Python课程回顾(day18)

常用模块的扩展

一、random模块

import random  # 随机

1.直接random.random(),会随机生成0到1之间的一个浮点数(不包含1)
print(random.random())
2.randint,关键字是int,括号内只能传入整形,会随机生成两个参数之间的整数(两者都包含) print(random.randint(1, 10))
3.randrange,关键字是range,括号内也只能传整形,会随机生成两个参数之间的整数(顾头不顾尾) print(random.randrange(1, 10))
4.sample,将一个指定的范围,随机取出1个或多个值(取决于参数),可以传入字符串或多个列表 print(random.sample([1, 2, 3, 4, 5, 6], 2))
5.shuffle,将一个指定的范围打乱顺序,类似与扑克里的洗牌 l1 = ['1', '2', '3', '4'] random.shuffle(l1) # 注意分层进行不可一行实现 print(l1)
6.choice,随机选择一个 print(random.choice([1, 2, 3]))
7.choices,随机选择多个,取决于k,取出的值是可以重复的 print(random.choices([1, 2, 3, 4, 5], k=2))

8.uniform,随机选择范围内的浮点数,与random.random不一样的是uniform可以规定范围
print(random.uniform(1,3)) 9.使用random模块完成随机验证码: def get_auth_code(length): res = '' for i in range(length): a = random.randint(0, 9) b = chr(random.randint(65, 90)) # chr可以将括号内的数字转换成ascii码表所对应的大写字母 c = chr(random.randint(97, 122)) # chr可以将括号内的数字转换成ascii码表所对应的小写字母 s = random.choice([a, b, c]) # 将每个元素内的值随机取出一个,依次循环 res += str(s) # res不能和整形相加,所以要将随机取出的值转换成str类型 print(res) get_auth_code(6)

二、sys模块

import sys  # 在python解释器下的sys模块

1.查看环境变量
print(sys.path)
2.查看内存中已加载的模块 print(sys.modules)
3.获取终端调用时的参数 print(sys.argv)
4.获取当前解释器版本信息 print(sys.version)
5.获取当前平台名称 print(sys.platform)
6.exit() 退出sys,括号内的参数默认为0(正常退出) exit() 需要了解的知识点: print(sys.api_version) # 接口版本 print(sys.maxsize) # print(sys.maxunicode) # Unicode当前记录的编码数量

三、os模块与os.path

import os    # 与操作系统交互达到对文件的读写操作

# 1.getcwd,获取当前的工作目录
print(os.getcwd())
# 2.chdir,切换工作目录到某某
# print(os.chdir(r'D://a/b/c'))
# 3.curdir,返回.或..查看目录等级(1个.当前目录,两个..是上级目录)
print(os.curdir)
# 4.environ,系统的环境变量
print(os.environ)
print(os.system('dir'))

# 需要掌握的知识点:
# 1.makedirs,在当前文件夹下创建文件目录,可递归创建,即会一次性创建多个递归形式的文件夹
# print(os.makedirs('a/b/c'))
# 2.mkdirs,也是在当前文件夹下创建目录,只能创建一个文件夹
# print(os.mkdir('ABC'))
# 3.removedirs,删除文件,也可递归删除,若文件夹内有文件则保留,没有则删除
# os.removedirs('a/b/c')
# 4.os.rmdir,删除单个目录
# os.rmdir('ABC')
# 5.os.remove,只能删除文件
# os.remove()
# 6.os.listdir(),列出当前目录内所有文件夹与文件名称
# print(os.listdir())
# 7.os.sep,获取当前平台的路径分隔符
# print(os.sep)
# 8.os.linesep,获取当前平台的换行符
# print(os.linesep)

四、shutill

import shutil  # 用于简化文件操作的模块

# 1.copyfileobj,用于拷贝文件
shutil.copyfileobj('源文件路径rb', '拷贝路径wb')
# 2.make_archive,压缩文件 shutil.make_archive('压缩文件', 'zip', '文件路径') shutil.make_archive('压缩文件', 'tar', '文件路径')
# 3.解压文件的方法1: # 使用shutil直接解压,关键字:unpack_archive shutil.unpack_archive(r'要解压的文件路径')
# 解压的方法2:使用相应的解压模块来解压 import zipfile # 这里只能针对zip格式的压缩包进行解压 z = zipfile.ZipFile(r'要解压的文件路径', 'r') z.extractall(path=r'解压目录') z.close() # 关闭文件 # 使用zipfile进行压缩 z = zipfile.ZipFile(r'要压缩的文件路径', 'w') z.write('要压缩的文件路径1') z.write('要压缩的文件路径2') z.close() # 关闭文件 # ============================================== # 解压的方法3:这里只能针对tar格式的压缩包进行解压 import tarfile t = tarfile.open(r'要解压的文件路径', 'r') t.extractall(r'解压目录') t.close() # 关闭文件 # 使用tarfile进行压缩 t = zipfile.ZipFile(r'要压缩的文件路径', 'w') t.add('要压缩的文件路径1') t.add('要压缩的文件路径2') t.close() # 关闭文件
posted @ 2018-10-16 21:23  BlackLinks  阅读(127)  评论(0编辑  收藏  举报