python常用模块(一)

python

目录

  • python常用模块(一)
  • time模块常用
  • datatime模块常用
  • os模块(*)
  • random模块
  • sys模块
  • json和pickle模块

time模块常用

# 通常time模块打印时间有三种

import time

# 时间戳形式

print(time.time()) # 时间戳时从1970年1月1日开始计时的时间

# 格式化时间(需要自己定义格式)

print(time.strftime(%Y-%m-%d %X)) # 年月日 时间

# 结构化时间

print(time.localtime()) # 以北京时间为准

print(time.gmtime()) # 以格林威治时间为准 与北京时间8小时时差

# 结构化时间转为格式化时间

struct_time = time.localtime()

print(time.strftime('%Y-%m-%d',struct_time))

# 结构化时间转为时间戳

print(time.mktime(struct_time))

# 格式化时间转为结构化时间

format_time = time.strftime('%Y-%m-%d %X')

print(time.striptime('2019-06-01 12:00:00','%Y-%m-%d %X'))

# 时间戳转化为结构化时间

stamp_time = time.time()

print(time.localtime(stamp_time))

# 掌握时间停滞方法

time.sleep() # 写秒数

datatime模块常用

import datetime

# 获取当地时间

now = datetime.datetime.now() # 打印出来完整的年月日时分秒 加上毫秒

# 对打印出来的时间进行加减

print(now + datetime.timedelta(days = 5)) # 默认修改为天

print(now + datetime.timedelta(5)) #加五天

print(now + datetime.timedelta(-5)) # 减五天

print(now + datetime.timedelta(hours = 5)) #可修改小时,分钟,秒. hours/minutes/secends

# 自定义修改时间

print(now.replace(year= 2010,month= 11, day = 22, hour = 4) # 全不可以自定义,不修改的部分就和现在的时间一致

os模块(*)

# os和操作系统相互交互,文件操作

import os

# 创建文件夹

os.mkdir('kkk')

# 删除多个空文件夹,会一直递归往上删除,直至删除所有空文件夹

os.removedirs(r'D:\day 17\bbb\ccc\ddd')

# 删除一个空文件夹

os.rmdir(r'D:\day 17\bbb')

# 列出文件夹内所有文件名和隐藏问件名

print(os.listdir(r'D:\day 17\bbb'))

# 删除文件

os.remove(r'D:\day 17\bbb\test.py')

# 重命名文件

os.rename(r'D:\day 17\bbb\test.py',r'D:\day 17\bbb\jiba.py') # 原文件名改为新文件名

# 打印环境变量

print(os.environ)

# dirname 用在执行文件添加环境变量 (*)

print(os.path,dirname(r'D:\day 17\bbb\test.py'))

print(os,path,dirname(__file__))

# import sys

sys.path.append(r'D:\day 17\bbb\test.py') # 添加环境变量

# 判断文件是否存在

print(os.path.exis(r'D:\day 17\bbb\test.py')) # 返回布尔值

# 拼接文件路径,(因为系统不一样,文件路径的衔接也不相同)

print(os.path.join(r'D:\day 17\bbb\test','sb.py'))

# 计算文件大小 (*)

print(os.path.getsize(r'D:\day 17\bbb\test.py'))

# 打印文件夹下所有文件夹和文件

print(os.walk(r'D:\day 9').__next__)

random模块

# 随机数模块

import random

print(random.random()) # 会打印0到1之间的随机小数,不包括0和1

# 打印[n,m]之间的数

print(random.randint(1,3)) # 闭区间

# 打印(n,m)之间的小数

print(random.uniform(1,3))

# 打印[n,m)之间的整数

print(random.randrange(1,3))

# 从容器中选择一个随机元素

print(random.choice([1000,'2',333,'ada'])

# 从容器中选择多个

print(random.sample([1,'w',32,'2','b'],2) # 从指定容器选择2个随机元素

# 将容器中的元素打乱

lis = [1,9,41,14,5,23,6,26,2]

random.shuffle(lis)

print(lis) # lis已被打乱

sys模块

# 与python交互

import sys

print(sys.argv) (**)

# Sys.argv[ ]其实就是一个列表,里边的项为用户输入的参数,关键就是要明白这参数是从程序外部输入的,而非代码本身的什么地方,要想看到它的效果就应该将程序保存了,从外部来运行程序并给出参数

# 获取解释器的版本

print(sys.hexversion)

# 获取当前文件导入模块的路径

print(sys.path) # 调用sys.stdout

# sys.stdout.write('123\n') 类似print 但这是c写的

# print(sys.stdin.read(10))

def print(str, end = '\n'):

str = str + end

sys.stdout.write('我是新的print\n')

sys.stdout.write(str)

print('sdads') # 调用该手写的print 可以输出相应的字符串(其它格式还不行)

json和pickle模块

json模块和pickle将数据序列化保存数据,json格式其它与言也会有,所以可以跨平台传输数据

# json中只能写入python中的dict/list/str/int/float/bool/None

# pickle是python独有的,可存任意类型数据

import json

dic = {'name':'nick'}

with open('test.json','w',encoding = 'utf8') as fw:

json.dump(dic,fw)

with open('tset.json','r',encoding = 'utf8') as fr:

data = json.load(fr)

print(data, type(data))

# pickle由于传输的是二进制,所以应该用b模式打开

def func():

print('111')

with open(r'D:day 17\m1\test.pkl','wb') as fw:

pickle.dump(func,fw)

with open(r'day 17\m1\test.pkl','rb') as fr:

data = pickle.load(fr)

data()

以上是 python常用模块(一) 的全部内容, 来源链接: utcz.com/z/389290.html

回到顶部