Python 模块学习(一)
一、时间模块
import time # 模块调用语句 注意:模块级导入一般放在文件顶部
import datetime print(time.time()) # 1550411181.441547: 时间戳
time.sleep(3) # CPU不工作,停止3秒
print(time.clock()) # 7.331190182070108e-07 计算CPU工作的时间 print(time.gmtime()) # UTC世界标准时间(英国):time.struct_time(tm_year=2019, tm_mon=2,
# tm_mday=17, tm_hour=13, tm_min=54, tm_sec=45, tm_wday=6, tm_yday=48, tm_isdst=0) print(time.localtime()) # 本地时间:time.struct_time(tm_year=2019, tm_mon=2, tm_mday=17,
# tm_hour=21, tm_min=59, tm_sec=18, tm_wday=6, tm_yday=48, tm_isdst=0) print(time.strftime('%Y-%m-%d %H:%M:%S')) # (重要)字符串(格式化)时间:2019-02-17 22:03:39 print(time.strptime('2019-02-17 22:03:39', '%Y-%m-%d %H:%M:%S')) # 时间结构的转换,输出见下行:
# time.struct_time(tm_year=2019,tm_mon=2,tm_mday=17,tm_hour=22,tm_min=3,tm_sec=39,tm_wday=6,tm_yday=48,tm_isdst=-1
) # 单独提取某个时间类型
a = time.strptime('2019-02-17 22:03:39', '%Y-%m-%d %H:%M:%S')
print(a.tm_year) # 年 2019
print(a.tm_mon) # 月 2
print(a.tm_mday) # 日 17
print(a.tm_hour) # 时 22
print(a.tm_min) # 分 3
print(a.tm_sec) # 秒 39
print(a.tm_yday) # 一年的第多少天 48
print(a.tm_wday) # 一周的第多少天 6 print(time.ctime()) # 默认为空 打印当前时间:Sun Feb 17 22:18:13 2019
print(time.ctime(3600)) # 把一个数转换为时间 从1970年开始计算
print(time.mktime(time.localtime())) # 把当前时间转换为时间戳:1550413367.0 print(datetime.datetime.now()) # 打印当前时间,友好表达方式:2019-02-28 14:33:37.570078
二、随机数模块
import random print(random.random()) # 生成一个0-1的随机数
print(random.randint(1, 8)) # 随机生成一个1-8之间的随机整数(包括8)
print(random.choice('sadasfga')) # 随机取出字符串中的一个字母
print(random.sample('asfafaffgh', 2)) # 从一个序列里面随机取出两个
print(random.randrange(1, 3)) # 1-3随机取出一个,不包括3
例:随机生成一个5位数的验证码,包含数字和字母
def v_code():
code = ''
for i in range(5):
if i == random.randint(0, 3):
add = random.randrange(10) # 0-9随机取出一个数
else:
add = random.randrange(65, 90) # 26个字母的ASCII值是65-90
add = chr(add) # 把ASCII转换为字母 code += str(add) # 字符串拼接 print(code)
法二:比上述方法更加简单
def v_code():
code = ''
for i in range(5):
add = random.choice([random.randrange(10), chr(random.randrange(65, 90))])
code += str(add) # 字符串拼接 print(code) v_code()
三、hashlib 加密模块
import hashlib # 两种方法:MD5和SHA两种加密方法 不可逆结果 # MD5 算法
m = hashlib.md5() m.update('hello world'.encode('utf8')) # python3 默认utf8编码
print(m.hexdigest()) # 获取加密结果(16进制):5eb63bbbe01eeed093cb22bb8f5acdc3 m.update('long'.encode('utf8'))
print(m.hexdigest()) # 7e5181dfabb9edf08a7075a8c18b0343 在前一次转换的基础上进行转换,相当于对'hello worldlong'进行转换 m2 = hashlib.md5()
m2.update('hello worldlong'.encode('utf8'))
print(m2.hexdigest()) # 7e5181dfabb9edf08a7075a8c18b0343 # SHA 算法
m = hashlib.sha256()
m.update('hello world'.encode('utf8'))
print(m.hexdigest()) # 算法更复杂:b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
四、sys模块
1.解释器进行交互:通过传入的参数决定程序执行那段代码
import sys # 解释器进行交互 print(sys.argv) # 输出的当前路径 def post():
print('ok') def download():
pass if sys.argv[1] == 'post':
post()
elif sys.argv[1] == 'downlod':
download()
打开电脑cmd,在文件路径下用python执行该程序

输出列表,列表的第一个元素存的是文件名,可以在“python sys模块.py” 后面加参数控制程序的执行:

注意:一般情况参数越多程序越灵活
2.常见使用:
import sys sys.exit(0) # 退出程序,可以加参数,正常退出是exit(0) print(sys.platform) # win32 返回windows的平台,可以做跨平台的判断
print(sys.version) # 获取python解释器的当前版本信息
print(sys.path) # 返回模块的搜索路径,初始化时使用pythonpath环境变量的值
print(sys.platform) # 返回操作平台名称:win32
print(sys.path.append()) # 路径添加,如果要使用的模块不在python里,在另外的文件下,就需要添加绝对路径
Python 模块学习(一)的更多相关文章
- 【转】Python模块学习 - fnmatch & glob
[转]Python模块学习 - fnmatch & glob 介绍 fnmatch 和 glob 模块都是用来做字符串匹配文件名的标准库. fnmatch模块 大部分情况下使用字符串匹配查找特 ...
- 【目录】Python模块学习系列
目录:Python模块学习笔记 1.Python模块学习 - Paramiko - 主机管理 2.Python模块学习 - Fileinput - 读取文件 3.Python模块学习 - Confi ...
- Python模块学习filecmp文件比较
Python模块学习filecmp文件比较 filecmp模块用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单.python标准库还提供了difflib模块用于比较文件的内容.关于dif ...
- python模块学习第 0000 题
将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果. 类似于图中效果: 好可爱>%<! 题目来源:https://github.com/Yixiao ...
- Python模块学习:logging 日志记录
原文出处: DarkBull 许多应用程序中都会有日志模块,用于记录系统在运行过程中的一些关键信息,以便于对系统的运行状况进行跟踪.在.NET平台中,有非常著名的第三方开源日志组件log4net ...
- 解惑Python模块学习,该如何着手操作...
Python模块 晚上和朋友聊天,说到公司要求精兵计划,全员都要有编程能力.然后C.Java.Python-对于零基础入门的,当然是选择Python的人较多了.可朋友说他只是看了简单的语法,可pyth ...
- Python模块学习
6. Modules If you quit from the Python interpreter and enter it again, the definitions you have made ...
- Python模块学习系列
python模块-time python模块-datetime python模块-OS模块详解
- Python模块学习遇到的问题
Python使用import导入模块时报ValueError: source code string cannot contain null bytes的解决方案 Python使用import导入模块 ...
- Python 模块学习:re模块
今天学习了Python中有关正则表达式的知识.关于正则表达式的语法,不作过多解释,网上有许多学习的资料.这里主要介绍Python中常用的正则表达式处理函数. 方法/属性 作用 match() 决定 R ...
随机推荐
- SpringAOP和Spring事物管理
Spring AOP : Pointcut表达式: designators-指示器 wildcards-通配符 operators-操作符 wildcards: * -- 匹配任意数量的字符 + -- ...
- Mac 解登录密码Keychain
在终端输入: security unlock-keychain -p "login pwd" ~/Library/Keychains/login.keychain 在制作macOS ...
- FZu Problem 2233 ~APTX4869 (并查集 + sort)
题目链接: FZu Problem 2233 ~APTX4869 题目描述: 给一个n*n的矩阵,(i, j)表示第 i 种材料 和 第 j 种材料的影响值,这个矩阵代表这n个物品之间的影响值.当把这 ...
- bryce1010专题训练——划分树
1.求区间第K大 HDU2665 Kth number /*划分树 查询区间第K大 */ #include<iostream> #include<stdio.h> #inclu ...
- 外文翻译 《How we decide》被情感愚弄 第三节
本科论文答辩终于结束啦,一切都要继续回到正轨. 这是第三章章最后一节 书的导言 本章第二节 本章第一节 "信用卡是我的敌人."Herman Palmer这样说到.在平日,Herma ...
- AJPFX简述Java中this关键字的使用
Java中this关键字的使用主要有两处: 1.构造方法 this指的是调用构造方法进行初始化的对象. //有参构造public Human(String name, int age) { this( ...
- 猩球StarBall ,一个方便约球的小程序
扫描小程序码直接进入小程序 猩球StarBall 是一款为热爱运动的人群提供便利的小程序. 开发技术为Java +Mysql 其中用到的技术框架为SpringBoot,Mybatis,Redis,Qu ...
- LN : leetcode 516 Longest Palindromic Subsequence
lc 516 Longest Palindromic Subsequence 516 Longest Palindromic Subsequence Given a string s, find th ...
- Android手机屏幕投射到电脑神器Vysor
做android开发的,经常要把手机屏幕投射到电脑,用来演示.普遍的解决方案是360或者豌豆荚的演示功能,缺点是延迟非常厉害,大概有3秒左右,非常影响演示效果.以下介绍Vysor,几乎0延迟,能与手机 ...
- 找不到draw9patch.bat?已经不用找了
Google 已经因为 draw9patch 热门的原因,把它集成在 Android Studio 里面了, 你现在可以直接在 Android Studio 里直接打开编辑了.