经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » Python » 查看文章
Python学习 :常用模块(一)
来源:cnblogs  作者:初释衷年  时间:2018/10/23 9:24:23  对本文有异议

常用模块(一)

一、时间(time)模块

时间戳 (Timestamp):时间戳表示的是从1970年1月1日00:00:00为计时起点,到当前的时间长度

  1. import time
  2. print(help(time))
  3. 查看time模块的官方说明
  4.  
  5. time.time() # 返回当前时间的时间戳
  6. print(time.time())
  7. >>> 1540191340.5649574
  8.  
  9. time.clock() # 计算CPU执行的时间
  10. print(time.clock())
  11. >>> 3.6655977783544983e-07
  12.  
  13. time.sleep() # 延时多少秒
  14. print(time.sleep(3))
  15.  
  16. time.gmtime() # 结构化时间:将时间戳转换成为标准时间utc时区(0时区)
  17. print(time.gmtime())
  18. >>> time.struct_time(tm_year=2018, tm_mon=10, tm_mday=22, tm_hour=7, tm_min=4, tm_sec=0, tm_wday=0, tm_yday=295, tm_isdst=0)
  19.  
  20. time.localtime() # 本地时间:将一个时间戳转换为当前时区的时间
  21. print(time.localtime())
  22. >>> time.struct_time(tm_year=2018, tm_mon=10, tm_mday=22, tm_hour=15, tm_min=4, tm_sec=26, tm_wday=0, tm_yday=295, tm_isdst=0)
  23.  
  24. time.strftime() # 本地的结构化时间
  25. struct_time = time.localtime()
  26. print(time.strftime('%Y/%m/%d %X',struct_time))
  27. print(time.strftime('%Y/%m/%d %X'))
  28. >>>2018/10/22 21:23:45
  29. 2018/10/22 21:23:45
  30.  
  31. time.strptime() # 提取想要知道的具体时间:把元组转化为格式化的时间字符串。如果t未指定,将传入time.localtime()
  32. print(time.strptime('2018/10/22 09:27:30','%Y/%m/%d %H:%M:%S'))
  33. >>> time.struct_time(tm_year=2018, tm_mon=10, tm_mday=22, tm_hour=9, tm_min=27, tm_sec=30, tm_wday=2, tm_yday=290, tm_isdst=-1)
  34. a = time.strptime('2018/10/22 09:27:30','%Y/%m/%d %H:%M:%S')
  35. print(a.tm_year)
  36. >>> 2018
  37.  
  38. time.ctime() # 把时间戳转换成为时间,格式为固定的
  39. print(time.ctime())
  40. >>> Mon Oct 22 15:05:04 2018
  41.  
  42. time.mktime() # 把时间转换成为时间戳
  43. print(time.mktime(time.localtime()))
  44. >>> 1540191919.0

 二、datetime模块

  1. import datetime
  2. datetime.datetime.now() # 获取时间
  3. print(datetime.datetime.now())
  4. >>> 2018-10-22 15:05:37.396534
  5.  
  6. datetime.date.today() # 获取一个日期对象
  7. today = datetime.date.today()
  8. print(today)
  9. >>> 2018-10-22
  10.  
  11. print(today.ctime())
  12. >>> Mon Oct 22 00:00:00 2018
  13. print(today.timetuple())
  14. >>> time.struct_time(tm_year=2018, tm_mon=10, tm_mday=22, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=295, tm_isdst=-1)
  15. print(today.toordinal())
  16. >>> 736989
  17. print(datetime.date.fromordinal(today.toordinal()))
  18. >>> 2018-10-22
  19.  
  20. # 修改日期
  21. date = datetime.date(2018,10,22)
  22. print(date)
  23. date1 = date.replace(year=2018,day=30)
  24. print(date1)
  25. >>> 2018-10-22
  26. 2018-10-30

 三、random模块

  1. import random
  2. 1.random() # 随机生成0-1之间的数字
  3. print(random.random())
  4. >>> 0.034957371535410675
  5.  
  6. 2.randint() # 随机输出范围内的一个整数(包括3)
  7. print(random.randint(1,3))
  8. >>> 3 or 2 or 1
  9.  
  10. 3.randrange() # 随机输出范围内的一个整数(不包括3)
  11. print(random.randrange(1,3))
  12. >>> 1 or 2
  13.  
  14. choice() # 随机输出一个序列中的一个元素
  15. print(random.choice(['ALEX','MIKE','JOHN','CAT','DOG']))
  16.  
  17. random.shuffle() #打乱列表的序列,重新排序
  18. list = ['ALEX','MIKE','JOHN']
  19. random.shuffle(list)
  20. print(list)
  21. >>> ['JOHN', 'MIKE', 'ALEX']
  22.  
  23. sample() # 以列表形式输出一个序列中的随机几个元素
  24. print(random.sample(['ALEX',1,3],1))

 Eg.随机生成四位数验证码的两种方法

  1. import random
  2. # 方法1:
  3. def random_code():
  4. code = ''
  5. for i in range(4):
  6. if i == random.randint(0,5):
  7. add_num = random.randrange(10)
  8. else:
  9. add_num = chr(random.randrange(65,91))
  10. code += str(add_num)
  11. print(code)
  12. random_code()
  13.  
  14. # 方法2:
  15. def random_code():
  16. code = ''
  17. for i in range(4):
  18. add = random.choice([random.randrange(10),chr(random.randrange(65,91))])
  19. code += str(add)
  20. print(code)
  21. random_code()

 

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号