Python(10)——Python中的模块(常用内置模块)


目录:

random模块

math模块

OS模块

datetime模块

calendar模块

time模块

uuid模块


模块本质上就是一个.py文件。

在Python的安装文件中内置了很多有用的模块,利用内置模块的便捷性可以帮助我们更高效、快捷的完成代码的编写。

在Python中常用的内置模块有random、math、OS等等,在使用任何模块前都要先将模块导入才可以使用,导入模块的关键字如下:

import XXX模块 

下面介绍的Python中常用模块,如下:

一:random模块

random模块中主要是用来产生随机数等等。

random模块中常用的方法如下:
random.random( ):用来生成 [ 0, 1 ) 之间的随机浮点数,不包含结尾。代码如下:

import  random
print('random.random方法生成的随机浮点数是{}'.format(random.random())) 
# 打印结果如下:
random.random方法生成的随机浮点数是0.40192427824279797

random.uniform( n,m ):生成[ n,m ]的随机浮点数,包含起始。代码如下:
import  random
print('random.uniform方法生成的随机浮点数是{}'.format(random.uniform(0,5)))
# 打印结果如下:
random.uniform方法生成的随机浮点数是0.8042887724072911

random.randrange(n,m,a):用来生成 [ n-m ) 之间随机的整数,不包含结尾,a参数代表n-m之间的随机步长。代码如下:

import  random
print('random.randrange方法生成的随机整数是{}'.format(random.randrange(0,5)))
# 打印结果如下:
random.randrange方法生成的随机整数是0

random.randint( n,m ):用来生成[ n,m ] 之间的随机整数,但是包含起始。代码如下:
import  random
print('random.randint方法生成的随机整数是{}'.format(random.randint(1,1)))
# 打印结果如下:
random.randint方法生成的随机整数是1

random.choice( [ 1 , 2 , 3 ,4 ] ):将选取可迭代对象中的一个随机元素。代码如下:
​
print('random.choice方法随机选取的数是{}'.format(random.choice([1,2,3,4])))
# 打印结果如下:
random.choice方法随机选取的数是3

random.sample( n,num ) :从可迭代对象n中随机选取num个元素,以列表方式保存。代码如下:
nums = [ 1,2,3,4 ]
print( random.sample( nums, 2 ) ) # 随机选取可迭代对象中n个元素,以列表保存
# 打印结果如下:
[4, 3]

random.shuffle( n ):将可迭代对象进行随机清洗。(打乱各个元素)代码如下:

a = [1,2,3,4,5]
random.shuffle(a) # random.shuffle方法将可迭代对象中的元素打散
print(a)
# 打印结果如下:
[5, 2, 3, 4, 1]
二:math模块

math是Python中的数学模块,利用math模块中的许多方法可以对数值进行数学运算。
math模块中常用的方法如下:
math.cos:求一个数值的余弦值。代码如下:

import  math 
print('math.cos方法求60的余弦值是:{}'.format(math.cos(60)))
# 打印结果如下:
math.cos方法求60的余弦值是:-0.9524129804151563

math.ceil:向上取整。代码如下:

import math
print('math.ceil方法向上取整,2.1返回的是:{}'.format(math.ceil(2.1)))
# 打印结果如下:
math.ceil方法向上取整,2.1返回的是:3

math.floor:向下取整。代码如下:

import math
print('math.floor方法向下取整,3.9返回的是:{}'.format(math.floor(3.9)))
# 打印结果如下:
math.floor方法向下取整,3.9返回的是:3

math.fabs:取绝对值,并用浮点数形式保存,代码如下:

import math
print('math.fabs方法取绝对值,-5返回的是:{}'.format(math.fabs(-5)))
# 打印结果如下:
math.fabs方法取绝对值,-5返回的是:5.0

math.factorial:取阶乘,代码如下:

import  math
print('5的阶乘是{}'.format(math.factorial(5)))
# 打印结果如下:
5的阶乘是120


math.fmod:取余运算,代码如下:

import math
print('math.fmod方法取余运算,5/3返回的是:{}'.format(math.fmod(5,3)))
# 打印结果如下:
math.fmod方法取余运算,5/3返回的是:2.0

math.fsum:求和,代码如下:

import math
print('math.fsum方法求和运算,1+2返回的是:{}'.format(math.fsum((1,2))))
# 打印结果如下:
math.fsum方法求和运算,1+2返回的是:3.0

math.isnan:判断是否是非数值

import  math
print(math.isnan(123))
# 打印结果如下:
False

math.sqrt:开根号,代码例子如下:

import  math
print('math.sqrt方法求根号,4返回的是:{}'.format(math.sqrt(4)))
# 打印结果如下:
math.sqrt方法求根号,4返回的是:2.0
三:OS模块

Python中OS模块是对操作系统操作的模块,在开发中经常涉及到对文件、文件路径的操作等。

OS模块中有许多常用的方法,如下:

os.getcwd:获取当前工作目录。代码如下:

import os
print(os.getcwd()) # 获取当前工作路径
# 打印如下:
E:\pythoncode


os.chdir:修改工作目录。代码如下:

import os
os.chdir(r'E:\abc') # 改变工作路径


os.mkdir:创建文件夹,如果存在则报错,代码如下:

import os
os.mkdir(r'c') # 创建c文件夹,如果存在则报错


os.chmod:改变文件或文件夹的权限,代码如下:

import os
os.chmod(r'c',777) # 改变文件夹c的权限


os.removedirs:删除文件夹,代码如下:

import os
os.removedirs(r'E:\abc\c') # 删除指定路径的文件夹


os.renam:对文件或文件夹重命名,代码如下:

import os
os.rename(r'E:\abc','ABC') # 对文件进行重命名


os.listdir:获取工作目录中所有文件夹和文件,以列表保存。代码如下:

import os
print(os.listdir()) # 获取当前工作路径中的所有文件夹和文件,以列表保存
# 打印结果如下:
['.idea', 'ABC', 'hello.py']


os.path.isfile:判断对象路径是否存在,并且判断是否是文件,代码如下:

import os
print(os.path.isfile('hello.py')) # 判断对象是否是文件


os.path.isdir:判断对象路径是否存在,并且是否是文件夹,代码如下:

import os
print(os.path.isdir('.idea')) # 判断对象是否是文件夹


os.path.exists:判断对象是否存在。代码如下:

import  os
print(os.path.exists(r'C\dome'))
# 代码如下:
False

os.path.splitext:以指定的字符进行分隔,并且以元组保存。代码如下:

import os
print(os.path.splitext('hello.py')) # 将文件和扩展名分隔,以元组保存
# 打印结果如下:
('hello', '.py')

os.path.abspath:返回对象所在的绝对路径,不关心对象是否存在,代码如下:

print(os.path.abspath('hello.py')) # 获取对象的绝对路径
# 打印如下:
E:\pythoncode\hello.py

os.path.splitext:将文件和扩展名自动分割,以元组的形式保存。代码例子如下:

import os
print(os.path.splitext('hello.py')) # 将文件和扩展名分隔,以元组保存
# 打印结果如下:
('hello', '.py')
四:datetime模块

datetime模块是用来获取系统时间等,在Python中也是常用的模块,datetime模块中有datetime类,这个类的常用方法如下:

datetime.datetime.now:用来获取系统的当前时间

datetime中有许多方法是实例方法不允许使用类名.方法名来调用,需要先利用datetime类来创建实例,利用实例.实例方法来调用。如下:

import  datetime
DT = datetime.datetime(2020,2,28)
print( DT.date( ) ) # 打印结果如下:
2020-02-28print( DT.year ) #  打印结果如下:
2020
​
DT.month、DT.hour、DT.minute、DT.second等等,都是获取之前DT这个实例的参数
五:calendar模块

calendar模块里面包含了日历等等,在calendar模块下有Calendar类,Calendar类常用的方法有:

calendar.calendar:获取指定年的日历,代码如下:

import calendar
calendar.setfirstweekday(0)  # 设置日历每周的第一天是周几
c = calendar.calendar(2020) #2019的日历存储到变量c中

calendar.month:获取指定时间的月份日历,代码如下:
import calendar
print(calendar.month(2020, 2)) # 打印2020年2月份的日历

calendar.isleap:判断指定的年份是否是闰年,代码如下:
import calendar
# 闰年:能被四整除但是不能被100整除 或者 能被400整除的年
print(calendar.isleap(1900))  #  判断是否是闰年
# 打印结果如下:
False

calendar.leapdays( n,m ):从n-m年份之间有多少个闰年。代码例子如下:

import calendar
print(calendar.leapdays(2000, 2020)) # 将2000年到2020年之间的闰年的个数打印出来
# 打印结果如下:
5
六:time模块

Python中的time模块是用来获取时间相关的数据,time常用的方法如下:

time.time:获取从1970年1月1日00:00:00 UTC时间到现在时间的总秒数。代码如下:

import  time
print(time.time())
# 打印结果如下:
1582890852.8994951


time.sleep:用来将程序顺序执行的时候暂停的秒数,代码如下:

import  time
time.sleep(2)


time.asctime:获取标准时间,可以手动传递参数用元组的方式,代码如下:

import  time
print(time.asctime())
# 打印结果如下:
Fri Feb 28 19:54:14 2020

time.ctime:获取标准时间,可以传递给秒数用来获取时间,代码如下:

import  time
print(time.ctime(8512646)) 
# 打印结果如下:
Thu Apr  9 20:37:26 1970
七:uuid模块

uuid模块是用来生成一个全局唯一128位的标识符。通常在开发中用来标识用户ID,uuid模块的常用方法如下:

uuid.uuid1:基于MAC地址,时间戳,随机生成一个唯一的uuid,可以保证全球唯一。代码如下:

import uuid
print (uuid.uuid1()) 
# 打印结果如下:
a91b5666-5a24-11ea-a862-7429af472e4c

uuid.uuid2:Python不支持这个方法

uuid.uuid3:通过一个namespace(命名空间)和名字来进行MD5加密算法来生成一个uuid,可以保证的是在namespace中唯一,但是如果在同一个命名空间和相同的名字情况下则会生成相同的uuid。代码如下:

import uuid
print (uuid.uuid3(uuid.NAMESPACE_URL,'laowang'))
# 打印结果如下:
e63a342c-3cc7-3dd2-9816-540de801aae2

uuid.uuid4:生成一个随机的uuid,是通过伪随机数得到的,有一定的概率会重复。代码如下:

import uuid
print (uuid.uuid4())
# 打印结果如下:
6f98467e-e788-46ef-aa74-ec8e761ca1d0

uuid.uuid5:和uuid3基本相同,唯一不同的在于uuid5使用的是SHA1算法加密。代码如下:

import uuid
print (uuid.uuid5(uuid.NAMESPACE_URL,'laowang'))
# 打印结果如下:
d39cc269-f0ab-5597-93c1-664d4ded27f0
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值