1. import random
  2.   
      利用random模块可以进行从一个列表或者数字范围之间随机取出一个数字
  3. # 取随机小数 : 数学计算
  4. print(random.random()) # 取0-1之间的小数
  5. print(random.uniform(1,2)) # 取1-2之间的小数
  6.  
  7. # 取随机整数 : 彩票 抽奖
  8. print(random.randint(1,2)) # [1,2]
  9. print(random.randrange(1,2)) # [1,2)
  10. print(random.randrange(1,200,2)) # [1,2)
  11.  
  12. # 从一个列表中随机抽取值 : 抽奖
  13. l = ['a','b',(1,2),123]
  14. print(random.choice(l))
  15. print(random.sample(l,2))
  16.  
  17. # 打乱一个列表的顺序,在原列表的基础上直接进行修改,节省空间
  18. 洗牌
  19. random.shuffle(l)
  20. 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-格式化时间

  1. # time模块主要是用来和时间打交道的
  2. # 时间格式
  3. # '2018-8-20' '2018.8.20' 字符串数据类型 格式化时间 - 给人看的
  4. # 结构化时间
  5. # 1534732642.617272 浮点型数据类型,以s为单位 时间戳时间 - 给机器计算用的
  6. # 1970 1 1 0:0:0
  7.  
  8. # 时间戳时间
  9. # print(time.time())
  10.  
  11. # 格式化时间
  12. # print(time.strftime('%Y-%m-%d %H:%M:%S')) # str format time
  13. # print(time.strftime('%y-%m-%d %H:%M:%S')) # str format time
  14. # print(time.strftime('%c'))
  15.  
  16. # 结构化时间
  17. # struct_time = time.localtime() # 北京时间
  18. # print(struct_time)
  19. # print(struct_time.tm_mon)
  20.  
  21. # 时间戳换成字符串时间
  22. # print(time.time())
  23. # struct_time = time.localtime(1500000000)
  24. # # print(time.gmtime(1500000000))
  25. # ret = time.strftime('%y-%m-%d %H:%M:%S',struct_time)
  26. # print(ret)
  27.  
  28. # 字符串时间 转 时间戳
  29. # struct_time = time.strptime('2018-8-8','%Y-%m-%d')
  30. # print(struct_time)
  31. # res = time.mktime(struct_time)
  32. # print(res)
  33.  
  34. # 1.查看一下2000000000时间戳时间表示的年月日
  35. # 时间戳 - 结构化 - 格式化
  36. # struct_t = time.localtime(2000000000)
  37. # print(struct_t)
  38. # print(time.strftime('%y-%m-%d',struct_t))
  39.  
  40. # 2.将2008-8-8转换成时间戳时间
  41. # t = time.strptime('2008-8-8','%Y-%m-%d')
  42. # print(time.mktime(t))
  43.  
  44. # 3.请将当前时间的当前月1号的时间戳时间取出来 - 函数
  45. # 2018-8-1
  46. # def get_time():
  47. # st = time.localtime()
  48. # st2 = time.strptime('%s-%s-1'%(st.tm_year,st.tm_mon),'%Y-%m-%d')
  49. # return time.mktime(st2)
  50. # print(get_time())
  51.  
  52. # 4.计算时间差 - 函数
  53. # 2018-8-19 22:10:8 2018-8-20 11:07:3
  54. # 经过了多少时分秒
  55. # str_time1 = '2018-8-19 22:10:8'
  56. # str_time2 = '2018-8-20 11:07:3'
  57. # struct_t1 = time.strptime(str_time1,'%Y-%m-%d %H:%M:%S')
  58. # struct_t2 = time.strptime(str_time2,'%Y-%m-%d %H:%M:%S')
  59. # timestamp1 = time.mktime(struct_t1)
  60. # timestamp2 = time.mktime(struct_t2)
  61. # sub_time = timestamp2 - timestamp1
  62. # gm_time = time.gmtime(sub_time)
  63. # # 1970-1-1 00:00:00
  64. # print('过去了%d年%d月%d天%d小时%d分钟%d秒'%(gm_time.tm_year-1970,gm_time.tm_mon-1,
  65. # gm_time.tm_mday-1,gm_time.tm_hour,
  66. # 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里 

  1. # by luffycity.com
  2. import sys
  3. # sys 是和Python解释器打交道的
  4. # sys.argv
  5. # print(sys.argv) # argv的第一个参数 是python这个命令后面的值
  6. # usr = input('username')
  7. # pwd = input('password')
  8. # usr = sys.argv[1]
  9. # pwd = sys.argv[2]
  10. # if usr == 'alex' and pwd == 'alex3714':
  11. # print('登录成功')
  12. # else:
  13. # exit()
  14.  
  15. # 1. 程序员 运维人员 在命令行运行代码
  16. # 2. 操作系统input事件 阻塞 退出了CPU的竞争
  17.  
  18. # sys.path
  19. # print(sys.path)
  20. # 模块是存在解释器里的么??? 不是
  21. # 模块应该是存在硬盘上
  22. # 但是我在使用的时候 import --> 这个模块才到内存中
  23.  
  24. # 一个模块能否被顺利的导入 全看sys.path下面有没有这个模块所在的
  25. # 自定义模块的时候 导入模块的时候 还需要再关注 sys.path
  26.  
  27. import re
  28. # sys.modules
  29. # print(sys.modules) # 是我们导入到内存中的所有模块的名字 : 这个模块的内存地址
  30. # 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 ()  : 列出指定目录下所有文件以及文件夹

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

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

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

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

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

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

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

  1. import os # os是和操作系统交互的模块
  2.  
  3. # os.makedirs('dir1/dir2')
  4. # os.mkdir('dir3')
  5. # os.mkdir('dir3/dir4')
  6.  
  7. # 只能删空文件夹
  8. # os.rmdir('dir3/dir4')
  9. # os.removedirs('dir3/dir4')
  10. # os.removedirs('dir1/dir2')
  11.  
  12. # print(os.stat(r'D:\sylar\s15\day18\6.os模块.py'))
  13.  
  14. # exec/eval执行的是字符串数据类型的 python代码
  15. # os.system和 os.popen是执行字符串数据类型的 命令行代码
  16.  
  17. # os.'system('dir') # 执行操作系统的命令,没有返回值,实际的操作/删除一个文件 创建一个文件夹 exec
  18. # 程序要处理这些路径
  19. # ret = os.popen('dir) # 是和做查看类的操作
  20. # s =ret.read()
  21. # print(s)
  22. # print(s.split('\n'))
  23.  
  24. # os.listdir / os.path.join
  25. # file_lst = os.listdir('D:\sylar\s15')
  26. # for path in file_lst:
  27. # print(os.path.join('D:\sylar\s15',path))
  28.  
  29. # print('-->',os.getcwd()) # current work dir 当前工作目录
  30. # # 并不是指当前文件所在的目录
  31. # # 当前文件是在哪个目录下执行的
  32. # ret = os.popen('dir') # 是和做查看类的操作
  33. # s =ret.read()
  34. # print(s)
  35.  
  36. # os.chdir('D:\sylar\s15\day18') # 切换当前的工作目录
  37. # ret = os.popen('dir') # 是和做查看类的操作
  38. # s =ret.read()
  39. # 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. 详细解读 Spring AOP 面向切面编程(二)

    本文是<详细解读 Spring AOP 面向切面编程(一)>的续集. 在上篇中,我们从写死代码,到使用代理:从编程式 Spring AOP 到声明式 Spring AOP.一切都朝着简单实 ...

  2. HTML5+CSS:02用户注册表单

            新的学期已开始接近两个月了,还记得是在国庆节那几天申请的博客账号,可过了一个月都还没开始写博客,(>_<)有点小偷懒了,不过,学习还是不能落下的,今写一个有点实践运用的关于 ...

  3. 使用 EW 作Socks5代理

    简介: EarthWorm是一款用于开启 SOCKS v5 代理服务的工具,基于标准 C 开发,可提供多平台间的转接通讯,用于复杂网络环境下的数据转发. 主页: http://rootkiter.co ...

  4. 使用msfvenom生成木马

    msfvenom Options: -p, --payload < payload> 指定需要使用的payload(攻击荷载).如果需要使用自定义的payload,请使用& #03 ...

  5. call 与apply深入

    http://blog.csdn.net/bao19901210/article/details/21614761

  6. ES入门宝典(详细截图版)

    本文使用版本基于elasticsearch-6.4.0 1.什么是ES? 官网: https://www.elastic.co/products/elasticsearch  中文官网:https:/ ...

  7. abp(net core)+easyui+efcore实现仓储管理系统——EasyUI之货物管理八(二十六)

    abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...

  8. STL&&用法集合

    .....STL是c++里很强势很好用的一系列容器(函数)之类的,之前一直不太会用,所以总是暴毙....想着快比赛了,是时候理一下这些东西了. -1.pair 存放两个基本元素的东西 定义方法: pa ...

  9. MySQL传统点位复制在线转为GTID模式复制

    1.  GTID优缺点 MySQL传统点位复制在5.7版本前是主要的主从复制模式,而随着MySQL5.6版本引入GTID,并且MySQL5.7进行各方面的优化以后,在mySQL5.7(尤其是MySQL ...

  10. 简述JMM

    一.很多初学者分不清JMM和JVM的内存模型,本篇只是简要的谈一谈什么是JMM,并不深入探讨. 示意图A: 在多线程操纵共享资源时,并不是对资源本身进行的操作,而是将共享资源的副本复制了一份到自己的私 ...