python模块的学习

 1 # time 模块
 2 import time
 3 print(time.time())      #当前的时间挫
 4 #time.sleep(3)       #休息3秒钟,这3秒cpu不工作的
 5 print(time.gmtime())    #time.struct_time(tm_year=2018, tm_mon=6, tm_mday=21, tm_hour=10, tm_min=37, tm_sec=30, tm_wday=3, tm_yday=172, tm_isdst=0) 时间标准时间 UTC 英国时间
 6 #print(time.clock()) # use time.perf_counter or time.process_time
 7 print(time.perf_counter())
 8 print(time.process_time())
 9 print(time.localtime()) #本地时间time.struct_time(tm_year=2018, tm_mon=6, tm_mday=21, tm_hour=18, tm_min=41, tm_sec=50, tm_wday=3, tm_yday=172, tm_isdst=0)
10 #以上的结构化时间就是元组的格式
11 d = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
12 print(d)    #2018-06-21 19:11:46
13 p = time.strptime('2018-06-21 19:11:46','%Y-%m-%d %H:%M:%S')    #转化为结构化时间
14 #结构化时间的作用 可以取具体的某一部分时间
15 print(p.tm_hour) #可以只取小时
16 print(time.ctime(time.time()))  #将具体的时间戳转化为时间
17 print(time.mktime())    #将具体的时间格式转化为时间戳
18 #help()查看具体的方法
19 
20 import datetime
21 print(datetime.datetime.now())  #友好的时间展示
1 import random
2 print(random.random())
3 print(random.randint(1,8))  # 包括8点的随机1-8的整数
4 print(random.choice("abcdefg"))     #字符串进行随机
5 print(random.sample(["22",[1,2,3],123,"yuan"],2))   #参数 2 随机生产出2个模块的东西  #[123, '22']
6 print(random.randrange(1,3))    #不包括3 进行随机
7 chr(65)     #将数字转化为ascii码对应的字符 65-91  总共有
1 import random
2 #chr() 将数字转化为字符
3 # 实现, 数字与字符窜的随机组合
4 code = ''
5 for i in range(5):
6     add = random.choice([random.randrange(10),chr(random.randrange(65,91))])
7     code += str(add)    #将数字转化为字符串进行拼接
8 print(code)
 1 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
 2 os.chdir("dirname")  改变当前脚本工作目录;相当于shell下cd
 3 os.curdir  返回当前目录: ('.')
 4 os.pardir  获取当前目录的父目录字符串名:('..')
 5 os.makedirs('dirname1/dirname2')    可生成多层递归目录
 6 os.removedirs('dirname1')    若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
 7 os.mkdir('dirname')    生成单级目录;相当于shell中mkdir dirname
 8 os.rmdir('dirname')    删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
 9 os.listdir('dirname')    列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
10 os.remove()  删除一个文件
11 os.rename("oldname","newname")  重命名文件/目录
12 os.stat('path/filename')  获取文件/目录信息  文件的修改时间与访问时间都在这个信息里面
13 os.sep    输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
14 os.linesep    输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
15 os.pathsep    输出用于分割文件路径的字符串
16 os.name    输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
17 os.system("bash command")  运行shell命令,直接显示
18 os.environ  获取系统环境变量
19 os.path.abspath(path)  返回path规范化的绝对路径
20 os.path.split(path)  将path分割成目录和文件名二元组返回
21 os.path.dirname(path)  返回path的目录。其实就是os.path.split(path)的第一个元素
22 os.path.basename(path)  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
23 os.path.exists(path)  如果path存在,返回True;如果path不存在,返回False
24 os.path.isabs(path)  如果path是绝对路径,返回True
25 os.path.isfile(path)  如果path是一个存在的文件,返回True。否则返回False
26 os.path.isdir(path)  如果path是一个存在的目录,则返回True。否则返回False
27 os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
28 os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间
29 os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间

更多参考资料:

http://www.cnblogs.com/alex3714/articles/5161349.html

https://docs.python.org/2/library/os.html?highlight=os#module-os

1 # r 可以将字符窜中的特殊字符 如 /n 换行符号
1 sys.argv           命令行参数List,第一个元素是程序本身路径 ['文件名','post/get',path]
2 sys.exit(n)        退出程序,正常退出时exit(0)
3 sys.version        获取Python解释程序的版本信息
4 sys.maxint         最大的Int值
5 sys.path           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 自己写的模块:sys.path.append()将自己写的模块添加到环境变量中进行调用
6 sys.platform       返回操作系统平台名称
7 sys.stdout.write('please:')  #终端的标准输出
8 val = sys.stdin.readline()[:-1]

 1 #shutil 模块 

直接参考 http://www.cnblogs.com/wupeiqi/articles/4963027.html 

用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法

1 import md5
2 hash = md5.new()
3 hash.update('admin')
4 print hash.hexdigest()
1 import sha
2 
3 hash = sha.new()
4 hash.update('admin')
5 print hash.hexdigest()
 1 import hashlib
 2  
 3 # ######## md5 ########
 4  
 5 hash = hashlib.md5()
 6 hash.update('admin')
 7 print hash.hexdigest()
 8  
 9 # ######## sha1 ########
10  
11 hash = hashlib.sha1()
12 hash.update('admin')
13 print hash.hexdigest()
14  
15 # ######## sha256 ########
16  
17 hash = hashlib.sha256()
18 hash.update('admin')
19 print hash.hexdigest()
20  
21  
22 # ######## sha384 ########
23  
24 hash = hashlib.sha384()
25 hash.update('admin')
26 print hash.hexdigest()
27  
28 # ######## sha512 ########
29  
30 hash = hashlib.sha512()
31 hash.update('admin')
32 print hash.hexdigest()

 1 #以上加密算法虽然依然非常厉害,但时候存在缺陷,即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。 

1 import hashlib
2  
3 # ######## md5 ########
4  
5 hash = hashlib.md5('898oaFs09f')
6 hash.update('admin')  #这里为你想转化的明文   python3.0 需要encode utf8
7 print hash.hexdigest()  #通过该方法转化成密文
#还不够吊?python 还有一个 hmac 模块,它内部对我们创建 key 和 内容 再进行处理然后再加密
1 import hmac
2 h = hmac.new('wueiqi')
3 h.update('hellowo')
4 print h.hexdigest()

 #很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误、警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为 debug(), info(), warning(), error() and critical() 5个级别,下面我们看一下怎么用。 

1 import logging
2  
3 logging.warning("user [alex] attempted wrong password more than 3 times")
4 logging.critical("server is down")
5  
6 #输出
7 WARNING:root:user [alex] attempted wrong password more than 3 times
8 CRITICAL:root:server is down

更多模块的学习查看下面的链接,多联系

更加详细说明查看链接:http://www.cnblogs.com/alex3714/articles/5161349.html

posted @ 2018-06-21 23:10  xiaodingzi  阅读(215)  评论(0编辑  收藏  举报