一、模块

什么是模块?

模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称。

1.1 导入模块

import module #导入模块
from module import * #导入该模块中的所有方法,慎用
from module import fun as xx_fun #导入指定的方法,然后起别名
from module import fun1,fun2,fun3 #导入模块下的多个方法
import module,实际上就是把该模块的代码赋值给模块名,也就是module.py里面所有的代码,赋值给了module这个变量,如果是from module import fun,就是把module打开,把module里面的fun方法拿过来使用

导入模块的本质,就是把python文件拿过来执行一次。

1.2 模块分类

标准库:python内置的
开源模块:第三方
自定义模块:自己写的

if __name__ == '__main__':
这个模块被导入时,这里的代码不会被执行

1.3 第三方模块安装

    1、pip install xxx
2、whl,首先要下载whl文件
pip install xxx.whl
3、.tar.gz 压缩包,下载.tar.gz压缩包
1、解压
2、进入目录
3、执行python setup.py install

1.4 卸载和升级

pip uninstall xxx
pip install -U xxx # 升级到最新
pip install --upgrade xxx

1.5 换电脑后怎么批量安装之前安装过的第三方模块

导出已经安装过的依赖
pip freeze > xxx.txt
安装指定文件里面的模块
pip install -r xxx.txt

二、os模块

2.1 os模块常用方法

import os

print(os.listdir('..\lhy\lhy_homework'))  # 获取某个目录下的内容
os.mkdir() # 创建文件夹,如果文件夹已存在,会报错
os.makedirs('..\java\day1') # 递归创建文件夹,父目录不存在的时候,会创建父目录 os.remove('file_name') # 删除文件,不能删除文件夹
os.rmdir('wenjianjia_name') # 删除空文件夹
os.rename('file_name', 'new_file_name') # 重命名,文件和文件夹都可以
print(os.getcwd()) # 获取当前所在的目录
os.chdir('..\lhy_homework') # 进入到某个目录里面
print(os.environ) # 获取系统环境变量里面配置的内容 print(os.system('ipconfig')) # 执行操作系统命令,它只能帮你执行,不能拿到命令的结果
# 它返回的是命令执行是否成功,如果返回的是0,代表执行成功
print(os.popen('ipconfig').read()) # 执行操作系统命令,可以拿到命令的结果 print(os.path.split('..\a.py')) # 分隔路径和文件名的
print(os.path.join('e:', 'movies', 'dapian')) # 拼接路径 会自动根据系统选择系统分隔符
# 绝对路径。例如:E:\pyWorkSpace\lhy\lhy_homework\day05\ketanglianxi_05\a.py
os.path.abspath('lujing_name') # 把相对路径转为绝对路径
os.path.dirname() # 取当前文件的父目录 print(os.path.isfile('file_name')) # 是否为文件
os.path.isdir('file_name') # 是否为文件夹
os.path.exists('file_name') # 文件是否存在
os.path.getsize('file_name') # 获取大小
os.path.getctime('file_name') # 创建时间
os.path.getmtime('file_name') # 修改时间
os.path.getatime('file_name') # 最后访问时间 print(os.path.sep) # 当前系统的路径分隔符

2.2 os模块常用方法小练习

import os
# __file__代表当前文件 #E:\pyWorkSpace\lhy\lhy_homework\day05\ketanglianxi_05\python\lib\op_sql.py
base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 一层层获取父级目录
sql_file = os.path.join(base_path, 'sqls', 'create.sql')
print(os.path.abspath(__file__))
print(os.path.dirname(os.path.abspath(__file__)))
print(sql_file) #os.walk 递归遍历文件夹
for cur_path, dirs, files in os.walk(r'E:\pyWorkSpace\lhy\lhy_homework'): # cur_path:当前访问的目录,dirs :当前目录下的所有文件夹,files:当前文件夹中的所有文件
print('在当前%s目录下查找:'% cur_path)
for file in files:
if file.endswith('.mp4'):
print('在s%发现视频文件'% cur_path)
break

三、time模块

import time
# 时间戳 一串数字 从unix元年开始 过1秒 就+1 print(time.time()) # 当前的时间戳
print(time.strftime('%Y-%m-%d %H:%M:%S')) # 当前格式化好的时间 # 计算10天后的时间戳
ten_days_later = int(time.time()) - 60 * 60 * 24 * 3
print('三天前:', ten_days_later)
print('now:', int(time.time()))
str_time = '2020-08-29 17:33:38'
time_stamp = 1598693618 # 时间元组
# 时间戳转格式化好的时间
print(time.localtime(time_stamp)) # 当前时区的时间元组
print(time.gmtime(time_stamp)) # 标准时区的时间元组
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time_stamp))) # 把时间戳转格式化时间 # 格式化好的时间转时间戳
time_tuple = time.strptime(str_time, '%Y-%m-%d %H:%M:%S')
time_stamp_now = time.mktime(time_tuple)
print(time_stamp_now) # 把时间戳转为格式化为年-月-日的时间
now_ymd_str = time.strftime('%Y-%m-%d', time.localtime(time.time()))
# 把年-月-日的时间转为时间戳
now_ymd_stamp = time.mktime(time.strptime(now_ymd_str, '%Y-%m-%d'))

 四、random模块

import random, string

print(random.randint(1, 10))  # 随机整数生成,首尾都包含
print(random.uniform(1, 10)) # 随机小数生成,首尾都包含
print(random.choice(string.ascii_lowercase)) # 随机选择一个元素
print(random.sample(string.ascii_lowercase, 3)) # 随机选择几个元素 # 随机验证码练习
l = [random.choice(string.digits) for i in range(6)]
l2 = random.sample(string.digits, 6) # 6位验证码,不会有相同的数字
print(''.join(l))
print(''.join(l2)) l = [1, 2, 3, 4, 5, 6, 7, 8]
print('打乱之前的', l)
random.shuffle(l)
print('打乱之后的', l) s = '2131432421134'
print(sorted(s))
print(sorted(s, reverse=True)) d = {
'xh': 100,
'xb': 93,
'xz': 88,
'xl': 35
}
# 对字典进行排序
result = sorted(d.items(), key=lambda x: x[1], reverse=True) # key 这里传的是函数名,指明按字典的key还是value来排序
print(result)

 五、sys模块

sys.argv          # 命令行参数List,第一个元素是程序本身路径 ,用来获取运行python文件的时候,传过来的参数
sys.exit(n) # 退出程序,正常退出时exit(0)
sys.version # 获取Python解释程序的版本信息
sys.maxint # 最大的Int值
sys.path # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform # 返回操作系统平台名称

python 06篇 常用模块的更多相关文章

  1. python笔记之常用模块用法分析

    python笔记之常用模块用法分析 内置模块(不用import就可以直接使用) 常用内置函数 help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像 ...

  2. 十八. Python基础(18)常用模块

    十八. Python基础(18)常用模块 1 ● 常用模块及其用途 collections模块: 一些扩展的数据类型→Counter, deque, defaultdict, namedtuple, ...

  3. python基础31[常用模块介绍]

    python基础31[常用模块介绍]   python除了关键字(keywords)和内置的类型和函数(builtins),更多的功能是通过libraries(即modules)来提供的. 常用的li ...

  4. Python全栈开发之路 【第六篇】:Python基础之常用模块

    本节内容 模块分类: 好处: 标准库: help("modules") 查看所有python自带模块列表 第三方开源模块: 自定义模块: 模块调用: import module f ...

  5. python 学习分享-常用模块篇

    模块 就是前人给你造的轮子,你开车就好!!! 常用模块有: time模块 random模块 os模块 sys模块 shutil模块 json  &  picle模块 shelve模块 xml处 ...

  6. python基础之常用模块以及格式化输出

    模块简介 模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要 ...

  7. Day5 - Python基础5 常用模块学习

    Python 之路 Day5 - 常用模块学习   本节大纲: 模块介绍 time &datetime模块 random os sys shutil json & picle shel ...

  8. python之路——常用模块

    阅读目录 认识模块 什么是模块 模块的导入和使用 常用模块一 collections模块 时间模块 random模块 os模块 sys模块 序列化模块 re模块 常用模块二 hashlib模块 con ...

  9. Python 五个常用模块资料 os sys time re built-in

    1.os模块   os模块包装了不同操作系统的通用接口,使用户在不同操作系统下,可以使用相同的函数接口,返回相同结构的结果.   os.name:返回当前操作系统名称('posix', 'nt', ' ...

随机推荐

  1. 微星msi B450M+i5-8500+1060成功黑苹果

    经过几天的努力,终于成功装上黑苹果! N卡1060目前只能装10.13.6(17G65),10.14版本N卡是没有驱动的,即便装上后也是8M的显存 详细教程网上一大堆,我就不做一份了.推荐大家看一下黑 ...

  2. OFRecord 图片文件制数据集

    OFRecord 图片文件制数据集 在 OFRecord 数据格式 和 加载与准备 OFRecord 数据集 中,分别学习了 OFRecord 数据格式,以及如何将其它数据集转为 OFRecord 数 ...

  3. TensorFlowMNIST数据集逻辑回归处理

    TensorFlow逻辑回归处理MNIST数据集 本节基于回归学习对 MNIST 数据集进行处理,但将添加一些 TensorBoard 总结以便更好地理解 MNIST 数据集. MNIST由https ...

  4. CodeGen编写自定义表达式标记

    CodeGen编写自定义表达式标记 CodeGen支持开发人员通过编写plug-in modules插件模块来定义自定义表达式标记的能力,以提供与这些标记相关联的逻辑.这种plug-in module ...

  5. 十、构建memcached服务

    装包-------配置----起服务---验证   装包: [root@proxy ~]# yum -y  install   memcached    //安装软件包memcached [root@ ...

  6. 【NX二次开发】Block UI 列表框

    属性说明 常规         类型 描述     BlockID     String 控件ID     Enable     Logical 是否可操作     Group     Logical ...

  7. 【NX二次开发】Block UI 指定平面

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...

  8. 【SQLite】教程02-SQLite命令

    获取帮助 sqlite> .help 获得以下帮助: 命令 描述 .backup ?DB? FILE 备份 DB 数据库(默认是 "main")到 FILE 文件. .bai ...

  9. 面试官:一个TCP连接可以发多少个HTTP请求?

    曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么? 相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 HTML 如果包含几十个图片标签,这些图片是以什么方式.什 ...

  10. 『言善信』Fiddler工具 — 17、Fiddler常用插件(Willow)

    目录 1.Traific Difer插件 2.PDF View插件 3.JavaScript Formatter插件 4.CertMaker for iOS and Android插件 5.Synta ...