Python_模块
模块
一个python文件就是一个模块
标准模块 python自带的,不需要安装,直接import就可以用
第三方模块 别人写好的,需要安装
自己写的
导入模块的实质:
就是把导入的这个python文件里面的代码,从上到下执行了一遍
查找模块的顺序:
1、先从当前目录下查找
2、从python的环境变量的目录里面找
如果导入的是一个文件夹,那么会执行这个目录下的__init__.py
常用模块
json
time、datetime
os、sys
random
os
os.rename('m1.py','M1.py')
os.remove() 删除文件,不能删除文件夹
os.rmdir('test') 删除空文件夹的
os.mkdir('cars/benz') 创建文件夹,父目录不存在的时候不能创建
os.makedirs('cars/bmw') 创建文件夹,如果父目录不存在,会创建父目录
os.listdir() 获取某个目录下的内容,不传参数,默认获取当前目录内容
os.listdir(r'/Users/nhy' ) 获取Users/nhy目录(绝对路径)下的内容
os.listdir(r'../day4' ) 获取某个目录(相对路径)下的内容
os.sep 当前系统的路径分隔符
'xxx'+os.sep+'xx'
os.system() / os.popen() 执行操作系统命令
command = "ifconfig"
os.system(command) 执行操作系统命令,返回的是命令是否执行成功,返回0代表成功
os.popen(command).read() 返回执行结果
os.environ 取系统的环境变量
os.name 当前操作系统的名称
os.getcwd() 获取当前的绝对路径
os.chdir('../day4') 进入到某个目录
os.path.join()
os.path.join('e:','moives','sdyjq.mp4') 拼接路径
os.path.split()
p = "e:/moives/sdyjq.mp4"
os.path.split(p) 分隔路径,可用来取文件名
os.walk() 获取某个目录下面的内容
for cur_path,dirs,files in os.walk(r'/Users/nhy/PycharmProjects/fmz-code'):
print(cur_path,dirs,files)
os.path.isfile('tools') 判断是否是文件
os.path.isdir('m2.py') 判断是否是文件夹
os.path.exists('m2.py') 判断是否存在
os.path.getsize('m2.py') 获取文件大小,单位是字节
os.path.abspath('m2.py') 获取绝对路径
os.path.abspath(__file__) 获取当前文件的绝对路径
os.path.dirname(p) 取父目录,取上一级目录的
os.path.getctime('m2.py') 获取文件创建时间
os.path.getatime('m2.py') 获取文件最后一次访问时间
os.path.getmtime('m2.py') 获取文件的修改时间,返回的都是时间戳
random
random.randint(100000,999999) 产生随机整数
random.uniform(1,99) 产生随机小数
a = '1223324'
l = [2,23,52,35,235,23,523]
random.choice(l) / random.choice(a) 随机选择一个
random.sample(a,N) 随机选择N个,返回list
random.sample
random.shuffle(l) 洗牌,这个函数没有返回值,他会改变原来list的值
time
时间戳,从计算机诞生那一天到现在过了多少秒 1621063294
格式化好的时间 2021-5-15 19:38:23
int(time.time()) 获取当前的时间戳
time.strftime('%Y-%m-%d %H:%M:%S') 取当前格式化好的时间,Y是年的全部2021,y是年的后两位21
time.strftime('%Y-%m-%d') 取当前格式化好的时间
时间元组
时间戳转格式化好的时间
time_tuple = time.gmtime(1621069561) 取的是标准时区的时间
time_tuple = time.localtime(1772125523) 取的是当前时区的时间
时间戳转时间元组
time.strftime('%Y-%m-%d %H:%M:%S',time_tuple)
格式化好的时间转时间戳
time_tuple = time.strptime('2026-02-27 01:05:23','%Y-%m-%d %H:%M:%S')
print( int(time.mktime(time_tuple) ))
def str_to_timestamp(s=None,format="%Y-%m-%d %H:%M:%S"):
'''
:param s: 格式化好的时间,比如2021-5-16 17:06:32
:param format: 时间格式 %Y-%m-%d %H:%M:%S
:return: 返回的是一个时间戳,如果不传s,默认返回当前时间戳
'''
if s:
time_tuple = time.strptime(s, format)
return int(time.mktime(time_tuple))
return int(time.time())
def timestamp_to_str(timestame=None,format="%Y-%m-%d %H:%M:%S"):
'''
:param timestame: 时间戳
:param format: 时间格式 %Y-%m-%d %H:%M:%S
:return: 返回的是格式化好的时间,如果不传时间戳,那么返回当前的时间
'''
if timestame:
time_tuple = time.localtime(timestame)
return time.strftime(format,time_tuple)
return time.strftime(format)
faker模块 随机生成
f = faker.Faker(locale="zh_CN")
print(dir(f)) 打印所有方法
print(f.name()) #随机姓名
print(f.address()) #随机街道
print(f.city()) #随机城市
print(f.chrome()) #随机姓名
print(f.date_time()) #随机时间
print(f.user_name()) #用户名
print(f.street_address()) #街道名
print(f.phone_number()) #手机号
print(f.credit_card_full()) #全的信用卡信息
print(f.credit_card_number()) #信用卡
print(f.free_email()) #邮箱
print(f.ipv4()) #ip地址
print(f.ipv6()) #ip地址
print(f.name_female()) #女名字
print(f.name_male()) #男名字
print(f.ssn()) #身份证号

浙公网安备 33010602011771号