目录

time

为什么要有time模块,time模块有什么用?(自己总结)

1. 记录某一项操作的时间

2. 让某一块代码逻辑延迟执行

时间的形式

时间戳形式

# 时间戳
print(time.time()) # 距离1970年过去了多少秒 '''
1560148086.4304533
'''

格式化时间

import time

# 格式化时间
print(time.strftime("%Y-%m-%d %X"))
print(time.strftime("%Y-%m-%d %H:%M:%S")) '''
2019-06-10 14:28:06
2019-06-10 14:28:06
'''

结构化时间

import time

# 结构化时间
print(time.localtime()) # 北京时间
print(time.gmtime()) # 0时区 '''
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=14, tm_min=28, tm_sec=6, tm_wday=0, tm_yday=161, tm_isdst=0)
time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=6, tm_min=28, tm_sec=6, tm_wday=0, tm_yday=161, tm_isdst=0) '''

时间转化

import time

# 时间戳 转化为  结构化时间
time.sleep(3)
sjc = time.time()
print(time.localtime(sjc)) # 结构化时间 转化为 时间戳
sgh_time = time.localtime()
print(time.mktime(sgh_time)) ''' time.struct_time(tm_year=2019, tm_mon=6, tm_mday=10, tm_hour=14, tm_min=28, tm_sec=9, tm_wday=0, tm_yday=161, tm_isdst=0)
1560148089.0
''' # 格式化时间 转化为 结构化时间
print(time.strptime("1111-03-12 09:01:02","%Y-%m-%d %X")) # 结构化时间 转化为 时间戳
sgh_time = time.localtime()
print(time.mktime(sgh_time)) '''
time.struct_time(tm_year=1111, tm_mon=3, tm_mday=12, tm_hour=9, tm_min=1, tm_sec=2, tm_wday=6, tm_yday=71, tm_isdst=-1)
19-06-10 14:42:34 '''

总结:

  1. 重点掌握,time.time(),time.sleep()

datetime

1. datetime的作用:用于时间的加减

2. datetime常用的方法

import datetime

# 获取年-月-日  时:分:秒 的常见做法
now = datetime.datetime.now()
print(now,type(now))
now = str(now)
print(now.split(".")[0]) '''
2019-06-10 14:47:47.878884 <class 'datetime.datetime'>
2019-06-10 14:47:47 ''' # 只能加天,时,分,秒
plf = datetime.datetime.now()
print(plf + datetime.timedelta(5)) # 加5天
print(plf - datetime.timedelta(5)) # 减5天
print(plf - datetime.timedelta(-5)) # 加5天
print(plf + datetime.timedelta(hours=10)) # 加10小时
print(plf + datetime.timedelta(minutes=30)) # 加30分钟
print(plf + datetime.timedelta(seconds=40)) # 加40秒 '''
2019-06-15 14:49:45.671068
2019-06-05 14:49:45.671068
2019-06-15 14:49:45.671068
2019-06-11 00:49:45.671068
2019-06-10 15:19:45.671068
2019-06-10 14:50:25.671068
2012-12-23 05:13:14.671068 '''

random

1. random作用:产生随机数

2. random常见用法

import random

print(random.random())      # 随机0-1之间的小数

print(random.randint(0,1))          # [0,1]  0到1之间的整数

print(random.choice([0,1,2,3,"plf"]))       # 从指定容器中,随机选择一个

print(random.sample(["lt","plf","xs","cd"],2))      # 从指定容器中,随机选择多个

'''
0.48057373012022886
1
3
['cd', 'lt'] '''

OS

1. os的作用:与系统进行交互

2. os的常见用法

命令 含义
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录:('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs("dirname1/dirname2") 生成多级目录
os.removedirs("dirname1") 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir("dirname") 生成单级目录
os.rmdir("dirname") 删除单级目录,相当于rmidr。目录不为空为报错
os.listdir("dirname") 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat("path/filename") 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"",Linux下为"/"
os.linesep 输出当前平台使用的行终止符
os.pathsep 输出用于分割文件路径的字符串,win下为;,Linux下为:
os.name 输出字符串指示当前使用平台,win->'nt' ; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名两个元素,返回一个元组
os.path.dirname(path) 返回path的目录,即os.path.split(path)中的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) 返回path的文件的大小(字节)

sys

1. sys的作用:与python交互

2. sys常见的用法

主要是获取系统的参数配置。

用途较多:

  1. 获取系统的环境变量sys.path。
  2. 命令行参数List,第一个元素是程序本身路径
  3. 让程序退出sys.exit() 0为正常退出
  4. 获取当前执行脚本的平台:sys.platform
import sys

print(sys.path)     	# 获取环境变量

sys.path.append("临时的环境变量")  	# 添加临时python环境变量

print(sys.version)      # 获取python的版本

print(sys.argv)         # 在命令行中,获取参数;第一个是文件名本身

print(sys.platform)       # 返回操作系统平台名称

print(sys.exit(n))         # 程序退出,并自定义退出码。

json

1. json的作用:

a. 序列化(持久化的一种),将内存中的数据,以json文件类型保存。

b. 反序列化,将json文件中数据读取出来

c. 只能存储list,dict,None,bool,str,int/float 类型数据

2. json的常见用法

import json

tup = ['plf','hello','world']

a = json.dumps(tup)			# 将列表转化为json认识的字符串。
print(a) b = json.loads(a) # 将json认识的字符串 转化为 列表
print(b) with open("test.json","w",encoding="utf8") as fw:
json.dump(tup,fw) # 序列化,也称为持久化。 dump是序列化成文件 with open("test.json","r",encoding="utf8") as fr:
data = json.load(fr) # 反序列化,也称为取数据 load是反序列化 print(data) '''
["plf", "hello", "world"] <class 'str'>
['plf', 'hello', 'world'] <class 'list'>
['plf', 'hello', 'world'] '''

pickle

1. pickle的作用:

a. 存储python中一切数据类型

b. 存储是以二进制进行存储的

c. 一般存储不重要的数据

2. pickle的常见用法

import pickle

def f1():
print("from f1") a = pickle.dumps(f1)
print(a,type(a)) # 转化为了二进制 b = pickle.loads(a)
print(b,type(b))
b() # 调用f1函数 '''
b'\x80\x03c__main__\nf1\nq\x00.' <class 'bytes'>
<function f1 at 0x0000007475EA2E18> <class 'function'> ''' with open("plf.pkl","wb") as fw:
pickle.dump(f1,fw) with open("plf.pkl","rb") as fr:
data = pickle.load(fr) print(data,type(data)) data() # 调用f1函数 '''
<function f1 at 0x000000C18D022E18> <class 'function'>
from f1 '''

python之常见模块(time,datetime,random,os,sys,json,pickle)的更多相关文章

  1. Day 17 time,datetime,random,os,sys,json,pickle

    time模块 1.作用:打印时间,需要时间的地方,暂停程序的功能 时间戳形式 time.time() # 1560129555.4663873(python中从1970年开始计算过去了多少秒) 格式化 ...

  2. Python常用模块(time, datetime, random, os, sys, hashlib)

    time模块 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp) :         通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运 ...

  3. python笔记-1(import导入、time/datetime/random/os/sys模块)

    python笔记-6(import导入.time/datetime/random/os/sys模块)   一.了解模块导入的基本知识 此部分此处不展开细说import导入,仅写几个点目前的认知即可.其 ...

  4. 模块random+os+sys+json+subprocess

    模块random+os+sys+json+subprocess 1. random 模块   (产生一个随机值) import random 1 # 随机小数 2 print(random.rando ...

  5. day19:常用模块(collections,time,random,os,sys)

    1,正则复习,re.S,这个在用的最多,re.M多行模式,这个主要改变^和$的行为,每一行都是新串开头,每个回车都是结尾.re.L 在Windows和linux里面对一些特殊字符有不一样的识别,re. ...

  6. 常用模块之 time,datetime,random,os,sys

    time与datetime模块 先认识几个python中关于时间的名词: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.我们运行“ty ...

  7. time,datetime,random,os,sys,hashlib,logging,configparser,re模块

    #-----time模块----- print(help(time)) #打印time帮助文档 print(time.time()) #打印时间戳 1569824501.6265268 time.sl ...

  8. CSIC_716_20191116【常用模块的用法 time ,datetime, random, os, sys, hashlib】

    import time import datetime import os import sys import random import hashlib time模块 时间戳(Timestamp) ...

  9. 模块、包及常用模块(time/random/os/sys/shutil)

    一.模块 模块的本质就是一个.py 文件. 导入和调用模块: import module from module import xx from module.xx.xx import xx as re ...

随机推荐

  1. c# Linq List<T>去除其中重复的项

    //要去重的 list<T> listTest: var resultlist= listTest.GroupBy(p =>p.Id).Select(g => g.First( ...

  2. mysql中的数据类型长度

    “mysql中的数据类型长度是固定的 数据类型后面改的只是展示长度 没用的 int就是四个字节 2的31次方减一是最大值 所以改这个长度没用 只能改数据类型”

  3. VS2019 还原Resharper菜单位置

    方法: 第一步: Tools -> Customize -> Extensions Menu tab, uncheck Resharper 工具->自定义->扩展菜单-> ...

  4. TCP 连接建立分析

    tcp 三次握手与四次挥手 tcp 报文结构 tcp 是全双工的,即 client 向 server 发送信息的同时,server 也可以向 client 发送信息. 在同主机的两个 session ...

  5. Java的反射机制之反向抽烟

    show me the code and take to me,做的出来更要说的明白 GitHub项目JavaHouse同步收录 喜欢就点个赞呗! 你的支持是我分享的动力! 引入 反射是一种不按套路处 ...

  6. Fluent_Python_Part3函数即对象,05-1class-func,一等函数,函数即对象

    一等函数 一等函数即将函数看作一等对象.一等对象满足一下条件: 在运行时创建 能赋值给变量或数据结构中的元素 能作为参数传给函数 能作为函数的返回结果 1. 一等函数 例子1. 证明function是 ...

  7. HYStockChart, 股票图(包括K线图、趋势图、成交量、滚动、放大缩小等)

    HYStockChart, 股票图(包括K线图.趋势图.成交量.滚动.放大缩小等) https://www.helplib.com/GitHub/article_127980git 地址 http:/ ...

  8. 实际中可能遇到的NAT问题(IPsec)

    一.背景介绍:一般我们在实际网络中不是IPSec VPN的时候,都是边界设备连接Internet,然后两个边界设备通过Internet去实现互通,建立VPN,但是,有的运营商在分配IP地址的时候,给我 ...

  9. 虚拟交换系统-VSS

    1.虚拟交换系统VSS技术概述 VSS的特点: VSS将两台Catalyst 6500/4500系列交换机组合为单一虚拟交换机,对外来看,只有一台交换机,管理冗余链路如同管理自己的一个单一接口. VS ...

  10. 通过LAMP部署phpMyAdmin、wordpress(https)、discuz

    1.安装启动LAMP 安装环境: CentOS Linux release 7.5.1804 安装包: # yum -y install httpd php php-mysql mariadb-ser ...