python模块

1.导入模块的五种方式

# 模块:在python里一个py文件,就可以理解为是模块
# 不是所有的py文件都能作为一个模块导入
# 如果想让一个py文件能被导入,模块的名字必须要遵守命名规则
# python为了方便我们开发,提供了很多内置模块

# 1.使用import 模块名 直接导入一个模块
import time

# 2.from 模块名 import 函数名,导入一个模块里的方法或变量
from random import randint

# 3.from 模块名 import * 导入这个模块的‘所有’方法和变量
from math import *

# 4.导入一个模块并给这个模块起一个别名
import datetime模块 as dt

# 5.from 模块名 import 函数名 as 别名
from copy import deepcopy as dp

2.os模块

# os模块全称:OperationsSystem 操作系统
# os模块里面提供的方法就是用来调用操作系统里的方法

import os

# 获取操作系统的名字 windows ->nt 非windows posix
print(os.name)

# 获取操作系统的路径分隔符 windows ->\ 非windows /
print(os.sep)

print(os.path.abspath('转换.py'))  # 获取文件的绝对路径

print(os.path.isdir("转换.py"))   # 判断是否是文件夹

print(os.path.isfile("转换.py"))   # 判断是否是文件

print(os.path.exists("转换.py"))   # 判断是否存在

os.getcwd()   # 获取当前的工作目录,即当前python脚本工作的目录
os.chdir("test")   # 改变当前脚本工作目录,相当于shell下的cd命令
os.rename("aa.txt", "bb.text")   # 文件重命名
os.remove("aaa.txt")  # 删除文件
os.rmdir("dd")  # 删除空文件
os.removedirs("ss")   # 删除空文件夹
os.mkdir("aa")  # 创建一个文件夹
os.chdir("c://")  # 切换工作目录
os.listdir("c://")  # 列出指定目录里的所有文件和文件夹
os.environ  # 获取环境配置
os.environ.get("PATH")  # 获取指定的环境配置

3.sys模块

# sys模块提供对解释器使用或维护的一些变量的访问,以及与解释器强烈交互的函数
import sys

sys.path  # 结果是一个列表,表示查找模块的路径
sys.exit(100)  # 程序退出,和内置函数exit功能一致,100是返回的code码
sys.argin  # 传递给python脚本的命令行参数列表

sys.stdin  # 标准输入,可以获取用户的输入

sys.stdout  # 标准输出,可以通过修改它来改变默认输出

sys.stderr   # 错误输出,可以通过它来改变错误删除

4.math模块

# math模块保存了数学计算相关的方法,可以很方便的实现数学运算

import math
math.fabs(-100)  # 取绝对值
math.ceil(23.21)  # 向上取整
math.factorial(5)  # 计算阶层
math.floor(34.65)  # 向下取整
math.pi  # 派的值
math.pow(2, 3)  # 计算2的3次方
math.sin(math.pi / 6)  # 正弦值
math.coc(math.pi / 6)  # 余弦值
math.tan(math.pi / 6)  # 正切值

5.datetime模块

import datetime as dt
# 获取当前的系统时间
print(dt.datetime.now())

# 创建一个日期
print(dt.date(2020, 1, 1))

# 创建一个时间
print(dt.time(18, 23, 56))

# 计算3天以后的日期时间
print(dt.datetime.now() + dt.timedelta(3))

6.time模块

import time

# 获取从1970-01-01 00:00:00 UTC 到现在时间的毫秒数
print(time.time())

# 按照指定格式输出时间
# print(time.asctime("%Y-%m-%d %H:%M:%S"))

print(time.asctime())

print(time.ctime())

print("1")
# 线程休眠10秒
time.sleep(10)
print("2")

7.calendar模块

# calendar模块用来显示一个日历,用到的不是很多

import calendar

# 设置每周的起止日期码,周一到周日分贝是0~6
calendar.setfirstweekday(calendar.SUNDAY)

# 返回当前周起始日期的设置,默认情况下,首次载入calendar模块时返回0,即星期一
calendar.firstweekday()

# 生成2019年的日历,并且以周日起始日期码
c = calendar.calendar(2019)
print(c)

# 闰年返回true,不是返回false
calendar.isleap(1999)

# 获取二年之间存在多少闰年
calendar.leapdays(1995, 2000)

# 打印2019年3月份的日历
print(calendar.month(2019, 2))

8.hashlib和hmac模块

import hashlib
import hmac

# 这二个模块都是用来进行数据加密
# hashlib模块里主要支持二个算法 md5 和 sha 加密
# 加密方式:单向加密:只有加密的过程,不能解密md5/sha 对称加密 非对称加密 rsa

# 需要将要加密的内容转换成二进制

x = hashlib.md5()  # 生成一个MD5对象
x.update("abc".encode("utf8"))
print(x.hexdigest())  # 900150983cd24fb0d6963f7d28e17f72

h1 = hashlib.sha1("123456".encode())
print(h1.hexdigest())

h2 = hashlib.sha224("123456".encode())  # 224位
print(h2.hexdigest())

h3 = hashlib.sha3_256("123456".encode())  # 256位
print(h3.hexdigest())

h4 = hashlib.sha384("123456".encode())
print(h4.hexdigest())

# hmac加密可以指定密钥
h = hmac.new("h".encode(), "你好".encode())
result = h.hexdigest()
print(result)  # 获取加密后的结果

9.copy模块

import copy

num = [1, 4, 3, 5, [12, 23, 2], 8]
num1 = copy.copy(num)  # 对num列表进行潜复制
num2 = copy.deepcopy(num)  # 对num列表进行深复制

10.uuid模块

## uuid用来生成一个全局唯一的id
import uuid

print(uuid.uuid1())  # 32个长度 每一个字符由16个选择 16**32

# uuid3和uuid5是使用传入的字符串根据指定的算法算出来的,是固定的
print(uuid.uuid3(uuid.NAMESPACE_DNS, "zhang"))  # 生成固定的uuid
uuid.uuid5(uuid.NAMESPACE_DNS, "zhang")  # 生成固定的uuid
uuid.uuid4()  # 使用的最多
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值