十六、模块:time模块(时间)、random模块(随机数)

导入模块:import  模块

模块实际就是以个.py文件

调用模块下内容: 模块.方法名

模块分类:

  内置模块、第三方模块、自定义模块

模块查找顺序:

  自定义模块--第三方模块--内置模块

  



time模块

  表示时间的三种方式:

  1.       时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,返回的是float类型
  2.       元组:元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天等)
  3.       格式化的时间字符串:"1992-1-2"

时间戳是计算机能够识别的时间;时间字符串是人能够看懂的时间;元组则是用来操作时间的

# <1> 时间戳
import time
print(time.time())      # 返回当前时间的时间戳 1511879098.7924516
# <2> 时间字符串
print(time.strftime("%Y-%m-%d %X"))  #2017-11-28 22:24:58
# <3> 时间元组
print(time.localtime())  # localtime 当前时间     gmtime 世界标准时间
#time.struct_time(tm_year=2017, tm_mon=11, tm_mday=28, tm_hour=22, tm_min=25, tm_sec=39, tm_wday=1, tm_yday=332, tm_isdst=0)s = time.localtime()   # 结构化时间的对象print(s.tm_year)    # 2017...

  

时间形式转换

import time
s = time.localtime(123135456)   # 时间戳转换成结构化时间
print(s)
s =time.mktime(s)           # 结构化时间转换成时间戳
print(s)

s = time.strftime(‘%Y-%m-%d‘,time.localtime())      # 结构化时间转换成字符串时间形式
print(s)
s = time.strptime(‘2019.6.9‘,‘%Y.%m.%d‘)          # 字符串时间转换成结构化时间
print(s)

  

传入时间字符串,基础上加3天,然后显示

import time
def timer(s):
    s = time.mktime(time.strptime(s,‘%Y-%m-%d‘))
    s += (3*24*60*60)
    s = time.strftime(‘%Y-%m-%d‘,time.localtime(s))
    return s
print(timer(‘2017-8-9‘))

结构化时间、时间戳,直接转换字符串形式,返回固定的格式

import time
s = time.localtime()
print(time.asctime()) # Tue Nov 28 22:54:13 2017
s = time.time()
print(time.ctime(s)) # Tue Nov 28 22:54:13 2017

  

time.sleep(n)

  模拟IO操作,停n秒

def foo():
    print(1)
    time.sleep(2)
    print(2)
foo()

  



random模块

import random
print(random.random())                       # 大于0且小于1之间的浮点型数字
print(random.randint(1,6))                   # 大于等于1且小于等于6的整型数字
print(random.randrange(1,6))                #大于等于1且小于6的整型数字
print(random.choice([1,3,5,‘a‘]))           # 从选项中随机取一个值
print(random.sample([2,5,8,‘a‘,‘f‘,6],2))   # 指定从选项中随机取几个值 这里是2 个
print(random.uniform(1,5))                  # 取大于1且小于5 之前的浮点数

l = [1,5,4,8,6,4,5]
random.shuffle(l)                       # 随机打乱顺序
print(l)

  

随机验证码

import random

def v_code():    code = ‘‘    for i in range(5):        n=random.randint(0,9)        c=chr(random.randint(65,90))   # A - Z , a -z(97,122)        add=random.choice([n,c])        code="".join([code,str(add)])    return codeprint(v_code())

  

时间: 2024-10-23 18:30:03

十六、模块:time模块(时间)、random模块(随机数)的相关文章

模块基础上半部分加 random 模块

目录 一.模块的四种形式 1.1 什么是模块 1.2 模块形式: 1.3 为什么要用模块 二.import 和 from...import... 2.1 import 模块名 2.2 from...import... 模块名 2.3 import 和 from...import...的异同 三.循环导入问题 四.模块的搜索路径 五.python文件的两种用途 六.random 模块 random 模块的使用方法 一.模块的四种形式 1.1 什么是模块 模块是一系列功能的集合体,而函数是某一个功能

ansible自动化部署之第三方模块添加(时间计时模块)

一.时间计时模块 ansible中可以加入一个计时模块在执行ansible-playbook时显示执行时长.方便使用. 1.配置方法 cd /etc/ansible mkdir callback_plugins cd callback_plugins wget https://raw.githubusercontent.com/jlafon/ansible-  \                     profile/master/callback_plugins/profile_tasks.

python全栈开发基础【第二十六篇】(concurrent.futures模块、协程、Greenlet、Gevent)

注意 1.不能无限的开进程,不能无限的开线程最常用的就是开进程池,开线程池.其中回调函数非常重要回调函数其实可以作为一种编程思想,谁好了谁就去掉 2.只要你用并发,就会有锁的问题,但是你不能一直去自己加锁吧那么我们就用QUEUE,这样还解决了自动加锁的问题由Queue延伸出的一个点也非常重要的概念.以后写程序也会用到这个思想.就是生产者与消费者问题 一.Python标准模块--concurrent.futures(并发未来) concurent.future模块需要了解的 1.concurent

Python 常用模块(1) -- collections模块,time模块,random模块,os模块,sys模块

主要内容: 一. 模块的简单认识 二. collections模块 三. time时间模块 四. random模块 五. os模块 六. sys模块 一. 模块的简单认识 模块: 模块就是把装有特定功能的代码进行归类的结果引入模块的方式: (1) import 模块 (2) from 位置 import 模块 二. collections模块 collections模块主要封装了一些关于集合类的相关操作. 如我们学过的iterable,iterator等等.除此以外, collections还提

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十六:IIC储存模块

IIC储存器是笔者用来练习精密控时的经典例子.<整合篇>之际,IIC储存器的解释,笔者也自认变态.如今笔者回头望去,笔者也不知道自己当初到底发什么神经,既然将IIC的时序都解释一番.由于开发上板也嵌着IIC储存器(24LC04),笔者还得循例地介绍一下. IIC储存器是应用IIC总线的储存器,时序本身并不是很复杂不过缺有一大堆时序参数,而且官方提供的时序也不利于描述,所以许多时序都必须自行绘制,真是麻烦死人.麻烦归麻烦,笔者终究还要吃饭,为了肚子,再麻烦的事情也要硬着头皮捱过去 ... 这也是

李晓菁201771010114《面向对象程序设计Java》第十六周学习总结

一:理论知识 1.线程的概念: 程序是一段静态的代码,它是应用程序执行的蓝本.‐进程是程序的一次动态执行,它对应了从代码加载.执行至执行完毕的一个完整过程. 多线程是进程执行过程中产生的多条执行线索.‐线程是比进程执行更小的单位.‐线程不能独立存在,必须存在于进程中,同一进程的各线程间共享进程空间的数据.‐每个线程有它自身的产生.存在和消亡的过程,是一个动态的概念.‐多线程意味着一个程序的多行语句可以看上去几乎在同一时间内同时运行. (2)Java中实现多线程的途径有两种: ‐创建Thread类

马凯军201771010116《面向对象与程序设计Java》第十六周知识学习总结

一:理论知识部分 1.线程的概念: 程序是一段静态的代码,它是应用程序执行的蓝 本. ‐进程是程序的一次动态执行,它对应了从代码加 载.执行至执行完毕的一个完整过程. 多线程是进程执行过程中产生的多条执行线索. ‐线程是比进程执行更小的单位. ‐线程不能独立存在,必须存在于进程中,同一进 程的各线程间共享进程空间的数据. ‐每个线程有它自身的产生.存在和消亡的过程, 是一个动态的概念. ‐多线程意味着一个程序的多行语句可以看上去几 乎在同一时间内同时运行. (2)Java中实现多线程的途径有两种

201771010101 白玛次仁 《2018面向对象程序设计(Java)》第十六周学习总结

实验十六  线程技术 实验时间 2017-12-8 1.学习总结: 1.程序 是一段静态的代码,它应用程序执行蓝 是一段静态的代码,它应用程序执行蓝 本.2.进程 是程序的一次动态执行,它对应了从代码加 是程序的一次动态执行,,它对应了从代码加 载.执行至完毕的一个整过程. 3.操作系统为每个进程分配一段独立的内存空间和 系统资源,包括:代码数据以及堆栈等.每 系统资源,包括:代码数据以及堆栈等.每 一个进程的内部数据和状态都是完全独立. 4.多任务操作系统 中,进程切换对 CPU 资源消耗较

冯志霞201771010107《面向对象程序设计(java)》第十六周学习总结

实验十六  线程技术 实验时间 2017-12-8 1.实验目的与要求 (1) 掌握线程概念: (2) 掌握线程创建的两种技术: (3) 理解和掌握线程的优先级属性及调度方法: (4) 掌握线程同步的概念及实现技术: .Java实现多线程的两个方法 ‐创建Thread类的子类‐在程序中定义实现Runnable接口的类 用Thread类的子类创建线程 a:首先需从Thread类派生出一个子类,在该子类中 重写run()方法.  b:然后用创建该子类的对象  c:最后用start()方法启动线程 l

第十六周进度表

第十六周进度表 所花时间(包括上课) 10 代码量(行) 853 博客量(篇) 1 了解到的知识点 了解了有关Android开发的知识 了解了页面跳转功能的实现 了解了绩效管理和项目总结的知识