import random
  
  利用random模块可以进行从一个列表或者数字范围之间随机取出一个数字
# 取随机小数 : 数学计算
print(random.random()) # 取0-1之间的小数
print(random.uniform(1,2)) # 取1-2之间的小数 # 取随机整数 : 彩票 抽奖
print(random.randint(1,2)) # [1,2]
print(random.randrange(1,2)) # [1,2)
print(random.randrange(1,200,2)) # [1,2) # 从一个列表中随机抽取值 : 抽奖
l = ['a','b',(1,2),123]
print(random.choice(l))
print(random.sample(l,2)) # 打乱一个列表的顺序,在原列表的基础上直接进行修改,节省空间
洗牌
random.shuffle(l)
print(l)

时间模块  time  

  time.sleep(5)   程序走到这会等待5秒

  一、时间戳    time.time()
   二、结构化时间     time.localtime

      只能取值不能修改

  三、格式化时间 %m/%d/%Y %H:%M:%S

      time.strftime('%Y-%m-%d')

  四、元组(struct_time) :struct_time元组共有9个元素共九个元素:(年,月,日,时,分,  秒,一年中第几周,一年中第几天等)
     时间戳 -localtime/gmtime->结构化时间 -strft ime->格式化时间
     时间戳 <-mktime-结构化时间 <-strptime-格式化时间

 # time模块主要是用来和时间打交道的
# 时间格式
# '2018-8-20' '2018.8.20' 字符串数据类型 格式化时间 - 给人看的
# 结构化时间
# 1534732642.617272 浮点型数据类型,以s为单位 时间戳时间 - 给机器计算用的
# 1970 1 1 0:0:0 # 时间戳时间
# print(time.time()) # 格式化时间
# print(time.strftime('%Y-%m-%d %H:%M:%S')) # str format time
# print(time.strftime('%y-%m-%d %H:%M:%S')) # str format time
# print(time.strftime('%c')) # 结构化时间
# struct_time = time.localtime() # 北京时间
# print(struct_time)
# print(struct_time.tm_mon) # 时间戳换成字符串时间
# print(time.time())
# struct_time = time.localtime(1500000000)
# # print(time.gmtime(1500000000))
# ret = time.strftime('%y-%m-%d %H:%M:%S',struct_time)
# print(ret) # 字符串时间 转 时间戳
# struct_time = time.strptime('2018-8-8','%Y-%m-%d')
# print(struct_time)
# res = time.mktime(struct_time)
# print(res) # 1.查看一下2000000000时间戳时间表示的年月日
# 时间戳 - 结构化 - 格式化
# struct_t = time.localtime(2000000000)
# print(struct_t)
# print(time.strftime('%y-%m-%d',struct_t)) # 2.将2008-8-8转换成时间戳时间
# t = time.strptime('2008-8-8','%Y-%m-%d')
# print(time.mktime(t)) # 3.请将当前时间的当前月1号的时间戳时间取出来 - 函数
# 2018-8-1
# def get_time():
# st = time.localtime()
# st2 = time.strptime('%s-%s-1'%(st.tm_year,st.tm_mon),'%Y-%m-%d')
# return time.mktime(st2)
# print(get_time()) # 4.计算时间差 - 函数
# 2018-8-19 22:10:8 2018-8-20 11:07:3
# 经过了多少时分秒
# str_time1 = '2018-8-19 22:10:8'
# str_time2 = '2018-8-20 11:07:3'
# struct_t1 = time.strptime(str_time1,'%Y-%m-%d %H:%M:%S')
# struct_t2 = time.strptime(str_time2,'%Y-%m-%d %H:%M:%S')
# timestamp1 = time.mktime(struct_t1)
# timestamp2 = time.mktime(struct_t2)
# sub_time = timestamp2 - timestamp1
# gm_time = time.gmtime(sub_time)
# # 1970-1-1 00:00:00
# print('过去了%d年%d月%d天%d小时%d分钟%d秒'%(gm_time.tm_year-1970,gm_time.tm_mon-1,
# gm_time.tm_mday-1,gm_time.tm_hour,
# gm_time.tm_min,gm_time.tm_sec))

 sys 模块    和python解释器打交道

  sys.argv 

    python python文件的路径 参数1 参数2 参数3 ...
    sys.argv = ['python文件的路径','参数1','参数2','参数3'...]
    好处:  这些需要输入的参数不需要在程序中以input的形式输入了
    文件名:   文件路径不能有中文 所有的文件名都应该符合变量命名规范
        整个文件路径不能有空格 不支持中文

  sys.path

    模块存在硬盘上

    是一个列表,这个列表中存的都是文件夹的绝对路径

    一个模块能被导入,是因为这个模块所在的文件夹在sys.path的列表中

    内置模块和第三方模块安装之后,不需要操作sys.path,直接用就行了

    如果一个模块导入不进来,那把这个模块的文件夹添加到sys.path中就行了
      import sys
        print(sys.path)
      # sys.modules
    # 所有被导入的模块的内存地址都存在sys.modules里 

 # by luffycity.com
import sys
# sys 是和Python解释器打交道的
# sys.argv
# print(sys.argv) # argv的第一个参数 是python这个命令后面的值
# usr = input('username')
# pwd = input('password')
# usr = sys.argv[1]
# pwd = sys.argv[2]
# if usr == 'alex' and pwd == 'alex3714':
# print('登录成功')
# else:
# exit() # 1. 程序员 运维人员 在命令行运行代码
# 2. 操作系统input事件 阻塞 退出了CPU的竞争 # sys.path
# print(sys.path)
# 模块是存在解释器里的么??? 不是
# 模块应该是存在硬盘上
# 但是我在使用的时候 import --> 这个模块才到内存中 # 一个模块能否被顺利的导入 全看sys.path下面有没有这个模块所在的
# 自定义模块的时候 导入模块的时候 还需要再关注 sys.path import re
# sys.modules
# print(sys.modules) # 是我们导入到内存中的所有模块的名字 : 这个模块的内存地址
# print(sys.modules['re'].findall('\d','abc126'))

  os 模块

    创建

      os.makedirs('dir1/dir2')  创建多级文件夹

      os.mkdir('dir3')     创建单个文件夹

    删除

      # 只能删空文件夹

      # os.rmdir('dir3/dir4')

      # os.removedirs('dir3/dir4')

    os.listdir ()  : 列出指定目录下所有文件以及文件夹

file-lst = os.listdir('d:\sylar\s15')
for path in file-lst
print(os.path.join('d:\sylar\s15',path)) #路径拼接,自动识别path 和'd:\sylar\s15'之间的分隔符

    os.stat()  获取文件、目录信息

  exec/eval执行的是字符串数据类型的 python代码
  os.system和 os.popen是执行字符串数据类型的 命令行代码

      os.system()   负责执行操作系统的命令,没有返回值  可以做实际操作,删除文件、创建文件夹

      os.popen()  适合做查看类型

    os.getcwd()   #当前工作目录

    os.chdir()    #切换当前目录

 import os # os是和操作系统交互的模块

 # os.makedirs('dir1/dir2')
# os.mkdir('dir3')
# os.mkdir('dir3/dir4') # 只能删空文件夹
# os.rmdir('dir3/dir4')
# os.removedirs('dir3/dir4')
# os.removedirs('dir1/dir2') # print(os.stat(r'D:\sylar\s15\day18\6.os模块.py')) # exec/eval执行的是字符串数据类型的 python代码
# os.system和 os.popen是执行字符串数据类型的 命令行代码 # os.'system('dir') # 执行操作系统的命令,没有返回值,实际的操作/删除一个文件 创建一个文件夹 exec
# 程序要处理这些路径
# ret = os.popen('dir) # 是和做查看类的操作
# s =ret.read()
# print(s)
# print(s.split('\n')) # os.listdir / os.path.join
# file_lst = os.listdir('D:\sylar\s15')
# for path in file_lst:
# print(os.path.join('D:\sylar\s15',path)) # print('-->',os.getcwd()) # current work dir 当前工作目录
# # 并不是指当前文件所在的目录
# # 当前文件是在哪个目录下执行的
# ret = os.popen('dir') # 是和做查看类的操作
# s =ret.read()
# print(s) # os.chdir('D:\sylar\s15\day18') # 切换当前的工作目录
# ret = os.popen('dir') # 是和做查看类的操作
# s =ret.read()
# print(s)

day 18 random模块 时间模块 sys模块 os模块的更多相关文章

  1. python note 17 random、time、sys、os模块

    1.random模块(取随机数模块) # 取随机小数 : 数学计算 import random print(random.random())# 取0-1之间的小数 print(random.unifo ...

  2. python中sys和os模块的使用

    在python中,sys,os模块是非常强大的,提供了许多对文件夹.文件和路径的操作方法 sys模块 sys.argv   #命令行执行脚本,其实它就是一个列表 ,sys.argv[0] 是程序自身路 ...

  3. Python学习日记(八)—— 模块一(sys、os、hashlib、random、time、RE)

    模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...

  4. python笔记6 模块与包 程序开发规范 包 re sys time os模块

    模块与包 python 模块首引用加载到内存,如果再次引用此模块,直接从内存中读取. python文件分为:执行文件(解释器运行的文件),被引用文件(import) 模块引用一共发生了3件事: 1.他 ...

  5. 【Python】 sys和os模块

    sys sys模块能使程序访问于python解释器联系紧密的变量和函数 ● sys中的一些函数和变量 argv 命令行参数构成的列表 path 查找所有可用模块所在的目录名的列表 platform 查 ...

  6. sys、os 模块

    sys 模块常见函数 sys.argv           #命令行参数List,第一个元素是程序本身路径 sys.exit(n)        #退出程序,正常退出时exit(0) sys.vers ...

  7. python的sys和os模块

    一.sys sys.argv:实现从程序外部向程序传递参数.  其中sys.argv[0]为脚本的名称,所以要判断是否有参数传入可以:if len(sys.argv) > 1.  sys.exi ...

  8. python学习笔记:sys、os模块

    os模块:负责程序与操作系统的交互,提供了访问操作系统底层的接口; sys模块:负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境. --os 常用方法-- ...

  9. Python中sys和os模块的区别

    sys: This module provides access to some variables used or maintained by the interpreter and to func ...

  10. 【Python】【有趣的模块】【sys&time&os】

    [模块] sys.path.append('C:/Users/wangxue1/PycharmProjects/selenium2TestOne') 然后就可以直接import 这个路径下的模块了 [ ...

随机推荐

  1. unity 导出模型

    不论unity是否运行,到处其中的模型方法: 1.如下图建立相关文件目录,并建立如下脚本 2.脚本代码 using UnityEngine; using UnityEditor; using Syst ...

  2. go map数据结构和源码详解

    目录 1. 前言 2. go map的数据结构 2.1 核心结体体 2.2 数据结构图 3. go map的常用操作 3.1 创建 3.2 插入或更新 3.3 删除 3.4 查找 3.5 range迭 ...

  3. SpringCloud之Feign和Ribbon的选择(五)

    Ribbon Ribbon 是一个基于 HTTP 和 TCP 客户端的负载均衡器它可以在客户端配置 ribbonServerList(服务端列表),然后轮询请求以实现均衡负载它在联合 Eureka 使 ...

  4. 痞子衡嵌入式:飞思卡尔i.MX RTyyyy系列MCU硬件那些事(2.2)- 在串行NOR Flash XIP调试原理

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是飞思卡尔i.MX RTyyyy系列EVK在串行NOR Flash调试的原理. 本文是i.MXRT硬件那些事系列第二篇的续集,在第二篇首集 ...

  5. 调用微信js sdk

    场景:需要调用微信获取当前位置的借口. 途径:查看微信 https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141115 .后 ...

  6. 前端技术之:JS开发几个有意思的东东

    一. 查看性能分析报告 npm run build:prod --report ​ 二.vue ui工具 ​ ​ 三.vue-element-admin https://panjiachen.gite ...

  7. hydra的使用

    hydra参数详解 -R 继续从上一次进度接着破解 -S 大写,采用SSL链接 -s 小写,可通过这个参数指定非默认端口 -l 指定破解的用户,对特定用户破解 -L 指定用户名字典 -p 小写,指定密 ...

  8. Windows下内网渗透常用命令总结

    域内信息收集常用命令 net group /domain //获得所有域用户组列表 net group zzh /domain //显示域中zzh组的成员 net group zzh /del /do ...

  9. [2018-01-12] laravel中的MVC

    路由里面可以做所有事情,但是真正的项目当中,路由只用来接收请求,并转发给控制器的方法进行处理 首先我们先了解一下 一.app/Http/routes路由的用法: 方法一. 这种方法写完后在控制器创建方 ...

  10. nginx篇最初级用法之地址重写

    nginx服务器的地址重写,主要用到的配置参数是rewrite rewrite regex replacement flag rewrite 旧地址 新地址 [选项] 支持的选项有: last 不再读 ...