Python中常见的模块
为了解决维护问题,一般情况下,在一个完整的项目中,会将特定的功能分组,分别放到不同的 文件中,在使用的过程中,可以单独维护,各个不同的文件之间互不影响,每个.py文件就被称为 一个模块,通过结合包的使用来组织文件。
封装思路: 函数 => 类 => 模块 => 包 => 项目
优点:
- 提高了代码的可维护性
- 提高了代码的复用性【当一个模块被完成之后,可以在多个文件中使用】
- 引用其他的模块【第三方模块】
- 避免函数名和变量的命名冲突
# 模块
'''
模块就是一个python文件模块分类:
1.内置模块: python 本身提供的模块 比如:os random time
2.自定义模块: 我们自己根据项目的需求,自己书写的模块
3.第三方模块: 别人写好的具有特殊功能的模块
a.在使用第三方模块的时候,需要先安装 比如:numpy pandas flask
b.导入和使用
'''
# 模块导入的方式:
# 第一种: import 模块名
# 第二种: from 模块名 import 模块名里面的方法
# 示例:
# 导入内置模块r import os
from random import randint
1、自定义import模块
代码演示:
# 导入自定义模块
# import module1
# 使用自定义模块的变量
# print(module1.name) # print(module1.age) # print(module1.love)
2、自定义from-import模块
代码演示:
from module1 import *
3、自定义from-import*模块
代码演示:
# * 表示通配符 模糊导入,使用*号后,可以直接使用模块中的所有的内容,比如变量,方法等(不推荐 使用)
'''
from module1 import * print(name) print(age) print(love)
'''
# 精确导入 (推荐)
from module1 import name,age print(name)
print(age)
# 给模块起别名 as
import random as r
# print(r.randint(1,10))
总结:在python中,每个py文件其实都是一个模块,如果跨模块调用函数,则采用导入的方式将不同的功能进行划分,调用函数的时候相对比较方便的。
4、第三方模块
第三方模块: 别人写好的具有特殊功能的模块
a.在使用第三方模块的时候,需要先安装 比如:numpy pandas flask b.导入和使用
更新pip 版本
python -m pip install --upgrade pip
第一种操作第三方模块的方式:
pip 专门用来安装和卸载python相关扩展的工具
pip -V 查看当前pip的版本号
pip list 查看当前项目安装的所有的扩展
pip install 扩展名(包名) 安装指定的包
一般我们在安装包的时候,会使用国内的镜像豆瓣的镜像源 s
安装flask框架
pip install flask -i https://pypi.doubanio.com/simple/
练习: 尝试去安装 numpy pandas flask requests lxml
pip uninstall 扩展名(包名)
pip uninstall flask
pip show 扩展名(包名) 第二种操作第三方模块的方式:
通过pycharm编辑器: 文件->设置->项目->python解释器:
+ 表示安装包
- 表示卸载包 x
5、time时间模块
代码演示:
import time
# 获取时间戳 从1970年1月1日0时0分0秒到现在经过的秒数
time.time()
# 延迟程序多长时间执行一次
time.sleep()
6、datetime日期模块【掌握】
是对time模块的封装,比time模块更加全面
import datetime # 获取当前的日期对象
date = datetime.datetime.now() print(date)
# 设置日期对象
date1 = datetime.datetime(year=2022,month=11,day=10,hour=10,minute=23,second=11)
print(date1)
print(type(date1)) # <class 'datetime.datetime'>
print(date1.year,date1.month,date1.day) # 年 月 日print(date1.hour,date1.minute,date1.second) # 时 分 秒
print(date1.date()) # 2022-11-10
print(date1.time()) # 10:23:11
# 将datetime.datetime类型转换为字符串
# strftime() 将日期对象转换为字符串
print(type(date1.strftime("%Y-%m-%d %H:%M:%S"))) # <class 'str'> print(date1.strftime("%Y{}%m{}%d{}").format("年","月","日")) #2022年11月10日
# strptime() 将字符串转换为日期对象
str1 = "2021-07-27 10:40:21"
print(type(datetime.datetime.strptime(str1,'%Y-%m-%d %H:%M:%S'))) # <class 'datetime.datetime'>
# timestamp() 日期对象转换为时间戳da daimestamp()) # 1668046991.0
# fromtimestamp() 时间戳转换为日期对象
print(datetime.datetime.fromtimestamp(1668046991.0)) # 2022-11-10 10:23:11
# 时间差
d1 = datetime.datetime(2022,1,13) d2 = datetime.datetime(2021,10,1) print(d1 - d2)
print(d2 - d1)
# timedelta 代表两个日期之间的时间差
dt = datetime.timedelta(days=5,hours=8) print(d1 + dt) # 2022-01-18 08:00:00
print(d1 - dt) # 2022-01-07 16:00:00
'''
# %y 两位数的年份表示(00-99)
# %Y 四位数的年份表示(000-9999)
# %m 月份(01-12)
# %d 月内中的一天(0-31)
# %H 24小时制小时数(0-23) # %I 12小时制小时数(01-12) # %M 分钟数(00-59)
# %S 秒(00-59)
# %a 本地简化星期名称# %A 本地完整星期名称# %b 本地简化的月份名称# %B 本地完整的月份名称
# %c 本地相应的日期表示和时间表示
# %j 年内的一天(001-366)
# %p 本地A.M.或P.M.的等价符
# %U 一年中的星期数(00-53)星期天为星期的开始
# %w 星期(0-6),星期天为星期的开始
# %W 一年中的星期数(00-53)星期一为星期的开始
# %x 本地相应的日期表示# %X 本地相应的时间表示# %% %号本身
7、os模块
用于获取系统的功能,主要用于操作文件或者文件夹
代码演示:
import os
# listdir 查看指定目录下面所有的文件夹和文件
# r"" 将字符串中的特殊字符进行转义print(os.listdir(r"C:\Users\chenbingjie\Desktop\python2105\day11"))
# ['test.py', '代码', '作业', '昨日作业', '笔记', '视频']
# 当前目录 .
# 上级目录 ..
# curdir 表示当前目录
print(os.curdir) # .
# getcwd() 获取当前路径
print(os.getcwd()) # C:\Users\chenbingjie\Desktop\python2105\day11\代码
# mkdir() 创建文件夹 (不能创建已经存在的文件夹) # os.mkdir("测试")
# makedirs() 创建多层文件夹
# os.makedirs("a/b/c")
# rmdir() 删除文件夹 (只能删除空文件夹) # os.rmdir("demo")
# rename() 重命名文件夹或者重命名文件
# os.rename("a","a11")
# ./表示当前目录 ../表示上级目录
# os.rename("../test.py","../demo.py")
# remove() 删除文件
# os.remove("demo.py")
# os.path.join() 拼接路径print(os.path.join(r"C:\Users\chenbingjie\Desktop\python2105\day11\ 代 码","func.py"))
# os.path.split() 拆分路径
path = r"C:\Users\chenbingjie\Desktop\python2105\day11\代码\1栈和队列.py" print(os.path.split(path))
# os.path.splitext() 拆分文件和扩展名
print(os.path.splitext(path))
# os.path.abspath 获取绝对路径
print(os.path.abspath("func.py"))
# os.path.getsize() 获取文件大小
print(os.path.getsize("func.py"))
# os.path.isfile() 判断是否是文件,若是文件返回True 若不是文件 返回False print(os.path.isfile("func.py")) # True
# os.path.isdir() 判断是否是文件夹, 若是文件夹 返回True 若不是文件夹 返回False
print(os.path.isdir("a11")) # True
# os.path.exists() 判断文件或者文件夹是否存在 若存在返回True 若不存在 返回False print(os.path.exists("demo.py")) #False
# os.path.dirname 获取路径的文件夹部分
print(os.path.dirname(path))
# os.path.basename 获取路径的文件名部分
print(os.path.basename(path))
重点掌握:
1.获取指定路径下的文件夹和文件
os.listdir()
2.创建目录(目录存在,不能创建)
os.mkdir()
3.创建多层目录
os.makedirs()
4.删除目录
os.rmdir()
5.删除文件
os.remove()
6.重命名文件或者重命名文件夹
os.rename()
Python中常见的模块相关推荐
- Python 中常见的配置文件写法
相信学习Python或者正在进行Python工作的小伙伴都会有一个疑问,为什么要写配置文件呢?在开发过程中,我们常常会用到一些固定参数或者是常量.对于这些较为固定且常用到的部分,往往会将其写到一个固定 ...
- python中的logging记录日志_[ Python入门教程 ] Python中日志记录模块logging使用实例...
python中的logging模块用于记录日志.用户可以根据程序实现需要自定义日志输出位置.日志级别以及日志格式. 将日志内容输出到屏幕 一个最简单的logging模块使用样例,直接打印显示日志内容到 ...
- Python中常见的配置文件写法分享!
相信学习Python或者正在进行Python工作的小伙伴都会有一个疑问,为什么要写配置文件呢?在开发过程中,我们常常会用到一些固定参数或者是常量.对于这些较为固定且常用到的部分,往往会将其写到一个固定 ...
- python中的log模块笔记
日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logging模块日志流处理流程 使用logging四大组件记录日志 配置logging的几种方式 向日志输出中添 ...
- Python中的常用模块
1.sys模块(内置模块) 在sys模块中定义了一些函数和变量,用来设置和获取系统的信息. # Python中的常用模块:sys模块 import sys sys.path.append('./tes ...
- Python中的logging模块
http://python.jobbole.com/86887/ 最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录.主要是从官方文档和stack ...
- Python中常见的__init__.py是什么意思?详解Python import的方式和原理
Python中常见的__init__.py是什么意思?详解Python import的方式和原理 1 什么是模块化编程? 2 __init__.py文件的作用 3 Python如何import第三方库 ...
- python 中常见的面试练习题
python 中常见的面试题 语言特性 编码规范 数据类型-字符串 数据类型 - 列表 数据类型 - 字典 数据类型 - 综合 操作类题目 高级特性 正则表达式 其他内容 算法和数据结构 爬虫类 网络 ...
- python中调用什么模块的什么函数来实现求实数平方根_python语言基础与应用答案...
python语言基础与应用答案 python3不再区分整数和长整数,统一为()类型. python可以使用(____)函数打开文件,这个函数默认的打开模式为(____). a=[3]alist=[1, ...
- 介绍Python中的__future__模块
这篇文章主要介绍了介绍Python中的__future__模块,__future__模块使得在Python2.x的版本下能够兼容更多的Python3.x的特性,需要的朋友可以参考下 Python的每个 ...
最新文章
- 请重新认识你作为程序员的价值
- boost::exception模块实现boost :: tuple捆绑的测试程序
- python匿名函数调用_python中引用局部变量的匿名函数
- 认识java编程语言
- 适合程序员的健身方法(转)
- qt信号槽踩坑日记(信号执行一次,槽函数执行多次解决方案)
- 公务员计算机基本操作知识培训,计算机基础知识:计算机中窗口的基本操作
- imx8mq - bootloader编译过程
- 启动3Dmax到初始化..界面卡住然后闪退解决办法
- kmz转换为dwg_徐州网站设计_seo优化常用技巧:什么软件可以将PDF文件转换为DWG文件...
- 与lwj问答之 C++中如何修改const变量
- 360怎么修改域名服务器地址,怎样修改DNS地址
- ASP.NET文档管理系统(功能强大且实用)
- 第一章.计算机组成与体系结构
- 蓝桥杯训练 日期计算
- Python基础——变量、常量、数字类型、四 列表list、五 字典dict、六 布尔bool、垃圾回收机制、用户交互、运算符、流程控制
- 【转载】走心撩到电音妹:所谓的“迷幻电子”是什么?
- python一行代码实现白噪声检测
- 【无标题】文档转成二维码添加到公众号文章(Word、Excel、PPT、PDF等)
- 《关于大学生熬夜状况的调查》
热门文章
- 看不懂英文文档,是我们英语太差吗?
- 计算机蓝屏代码0x0000007b,电脑开机出现蓝屏代码0x0000007b怎么办?
- [转] 测度论简介------一个通往异世界的大门
- 四、OSPF配置实验
- Windows10安装韩语输入法详细教程(图文)
- Paper | Multitask learning
- STM32工作笔记0100---认识设备的IMEI号和SN号的区别
- 南京服务器修复,南京戴尔服务器数据恢复
- Android 融云即时通讯简单概述
- 微信添加好友提示服务器繁忙,微信添加好友提示操作过于频繁怎么办 微信加人频繁的解决方法...