Python学习笔记--模块

Python学习笔记

77-模块

python 复制代码
# 模块: 一个python文件就可以简单地理解为是一个模块,但不是所有的python文件都可以作为模块使用
# python文件作为模块使用必须遵循命名规则.
'''
模块的分类:
1.内置模块:安装完python环境之后,可以直接使用的模块:比如os,time,datetime,random等等
2.白定义模块: 项目中根据具体需求,封装提炼的模块.
3.第三方模块:别人写好的具有某些特殊功能的模块,
    a.在使用第三方模块的时候,需要先安装(numpy pandas matplotlib等等)
    b.先导入才能使用
'''
# 模块常用的导入方式
# 1. import 模块名
import os
print(os.getcwd()) # 获取当前工作目录

# 第二种:from 模块名 import 模块中的方法或属性等等
from os import getcwd
print(getcwd()) # 获取当前工作目录

# 第三种:import 模块名 as 别名
import os as o
print(o.getcwd()) # 获取当前工作目录

78-math模块

python 复制代码
# 导入math模块
import math

# 向上取整,math.ceil()
num = 5.6
print(math.ceil(num)) # 6
print(math.ceil(5.6)) # 6

# 向下取整,math.floor()
num = 5.6
print(math.floor(num)) # 5
print(math.floor(5.6)) # 5

# 开平方,math.sqrt()
num = 9
print(math.sqrt(num)) # 3.0
print(math.sqrt(9)) # 3.0

# 分別获取浮点数整数和小数的部分,得到的结果是一个元组,math.modf()
num = 5.6
print(math.modf(num)) # (0.6, 5.0)
print(math.modf(5.6)) # (0.6, 5.0)

79-random模块

python 复制代码
# 导入random模块
import random

# 1.从指定列表中随机获取一个元素,random.choice()
list_1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(random.choice(list_1)) # 

# 2.生成指定范围内的随机数 random.randrange(start,end,step)
'''
start表示开始值,默认是0,生成的范围包含该值
end表示结束值,生成的范围不包含该值
step表示步长,默认值是1
'''
list_2 = random.randrange(10,20,1) # 生成10到19的随机数
print(list_2)

# 3.生成指定范围内的随机整数,random.randint(start,end)
list_3 = random.randint(10,20)
print(list_3)

# 4.随机生成0-1之间的任意数字,random.random()
list_4 = random.random()
print(list_4) # 0.0-1.0之间的随机小数

# 5.将列表中的元素随机排序,random.shuffle()
list_5 = [1,2,3,4,5,6,7,8,9,10]
random.shuffle(list_5)
print(list_5) # 打乱顺序

# 6.生成指定范围内的实数。结果是浮点数random.uniform()
list_6 = random.uniform(1,10)
print(list_6) # 1.0-10.0之间的随机小数

80-time模块

python 复制代码
# time模块主要用来操作时间,还可以用于控制程序

import time

# 获取从1970年1月1日0时0分0秒距今的秒数
print(time.time())  # 

# 2.格式化显示时间
print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

# 3.将程序暂定指定时间后,再执行后面的程序,单位是秒
print("程序暂停5秒")
time.sleep(5)
print("程序继续执行")

81-datetime模块

python 复制代码
# datetime模块主要用来显示和设置日期时间
import datetime

# 1 .now(),获取当前的日期对象
now = datetime.datetime.now()
print(now) 

# 2.datetime.datetime()设置日期对象
dt = datetime.datetime(2020, 1, 1)
print(dt) # 2020-01-01 00:00:00
dtt = datetime.datetime(year= 2020, month= 1, day= 1, hour= 1, minute= 1, second= 1)
print(dtt) # 2020-01-01 01:01:01

# 3.查看年月日 时分秒
print(dtt.year, dtt.month, dtt.day, dtt.hour, dtt.minute, dtt.second) # 2020 1 1 1 1 1

# 4.strftime(),将datetime类型转换为字符串
print(type(dtt)) # <class 'datetime.datetime'>
print(dtt.strftime("%Y-%m-%d %H:%M:%S")) # 2020-01-01 01:01:01
print(type(dtt.strftime("%Y-%m-%d %H:%M:%S"))) # <class 'str'>
print(dtt.strftime("%Y{}%m{}%d{}").format("年","月","日")) # 2020年01月01日

# 5.计算时间差值
dt1 = datetime.datetime(2020,1,1,1,1,1)
dt2 = datetime.datetime(2020,1,1,1,1,2)
print(dt2-dt1) # 0:00:01
dt3 = datetime.datetime(2020,1,1)
dt4 = datetime.datetime(2020,1,2)
print(dt4-dt3) # 1 day, 0:00:00

82-os模块

python 复制代码
# os模块主要是用来完成对文件或者文件夹的操作
import os

# 1.listdir(),查看指定日录下面所有的文件或者文件夹
# print(os.listdir('.'))  # 获取当前目录下所有的文件
# print(os.listdir('..')) # 获取上级目录下所有的文件
# print(os.listdir('C:/')) # 获取指定目录下所有的文件
# print(os.listdir('C:/Users/IES/Desktop/')) # 获取指定目录下所有的文件
# print(os.listdir(r'C:\2024 code')) # 获取指定目录下所有的文件,r 表示字符串不转义

# 2.curdir(),获取当前日录
# print('表示当前目录',os.curdir) # . 表示当前目录

# 3.getcwd()获取当前路径
# print('获取当前路径',os.getcwd()) # 获取当前路径

# 4.mkdir()创建文件夹,不能创建已经存在的文件夹
# os.mkdir('test') # 创建文件夹, 不能创建已经存在的文件夹
# os.mkdir(r'C:\2024 code\2024_Python\Python_qinafeng_128\test_1') # 创建文件夹, 不能创建已经存在的文件夹

# 5.makedirs()递归式创建文件夹
# os.makedirs(r'C:\2024 code\2024_Python\Python_qinafeng_128\test_2\test_3') # 递归式创建文件夹

# 6.rmdir(),只能删除空文件夹
# os.rmdir('test') # 删除空文件夹
# os.rmdir(r'C:\2024 code\2024_Python\Python_qinafeng_128\test_1') # 删除空文件夹

# 7.rename()修改文件名
# os.rename('test.txt', 'test_0.txt') # 修改文件名
# os.rename(r'C:\2024 code\2024_Python\Python_qinafeng_128\test_0.txt', r'C:\2024 code\2024_Python\Python_qinafeng_128\test_1.txt')

# 8.remove()删除文件
# os.remove('test_1.txt')

# 9.os.path.join()   拼接路径
# print(os.path.join('', ''))

# 10.os.path.split() 分割路径
# print(os.path.split(''))

# 11.os.path.getsize() 获取文件大小
# print(os.path.getsize('82-os模块.py')) # 字节
# print(os.path.getsize(r'C:\2024 code\2024_Python\Python_qinafeng_128\82-os模块.py') / 1024)

# 12.os.path.exists() 判断文件是否存在
print(os.path.exists('82-os模块.py')) # True

# 13.os.path.isfile() 判断是否是文件
print(os.path.isfile('82-os模块.py')) # True

# 14.os.path.isdir() 判断是否是文件夹
print(os.path.isdir('82-os模块.py')) # False

# 15.os.path.abspath() 获取绝对路径
print(os.path.abspath('82-os模块.py')) 

# 16.os.path.basename() 获取文件名
print(os.path.basename('82-os模块.py')) # 82-os模块.py

83-自定义模块

python 复制代码
# 自定义模块一般是在项日中根据自己的需求进行的封装。

# 1.导入自定义模块,module.py
import module

# 访问自定义模块中的变量,函数等
print(module.name)
print(module.age)
print(module.weight)
print(module.height)
# print(module.name, module.age, module.weight, module.height)
module.test_1()
module.test_2()
module.test_3()
# print(module.test_1(), module.test_2(), module.test_3())

# 2.通过from ... import ...导入自定义模块中的变量,函数等
from module import *  # *表示通配符,引入所有内容

print('from ... import ...', name)
print('from ... import ...', age)
print('from ... import ...', weight)
print('from ... import ...', height)
test_1()
test_2()
test_3()

# 3.通过from 模块名 import 模块中的变量,函数等(精确导入)
from module import name, age, test_1

print('from module import name', name)
print('from module import age', age)
test_1()

84-第三方模块

python 复制代码
'''
注意:
1.第三方模块需要先安装,才能使用
2.常见的发装力式:通过pip下具 或者通过 pycharm编辑器进行安装
'''
# 1.pip 安装第三方模块
'''
pip -V # 查看pip版本
pip list # 查看已安装的模块
Python.exe -m pip install --upgrade pip # 更新pip
pip install 模块名==版本号 # 安装指定版本的模块
pip install 模块名 # 安装模块
pip uninstall 模块名 # 卸载模块
pip install 模块名 -i https://mirrors.aliyun.com/pypi/simple/  # 安装指定镜像源
pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple/ # 设置永久镜像源
'''

# pip 安装模块 numpy pandas matplotlib requests
'''
pycharm编辑器进行安装

本地安装,win+R,cmd 打开命令行
'''
相关推荐
数据智能老司机43 分钟前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机2 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机2 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机2 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i2 小时前
drf初步梳理
python·django
每日AI新事件2 小时前
python的异步函数
python
使一颗心免于哀伤2 小时前
《设计模式之禅》笔记摘录 - 21.状态模式
笔记·设计模式
这里有鱼汤3 小时前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook12 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室13 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python