1 time模块
#!/usr/bin/env python
# __Author__: "wanyongzhen"
# Date: 2017/4/7
import time
# print(help(time)) # 打印time模块的帮助
# print(time.time()) # 返回当前时间戳
# time.sleep(3) # sleep 3秒
# print(time.clock()) # 计算CPU执行时间
#
# print(time.gmtime()) # 返回结构化UTC时间 不常用
#
# print(time.localtime()) # 返回本地时间 常用
# struct_time = time.localtime()
# print(time.strftime('%Y-%m-%d %H:%M:%S',struct_time)) # 转换成字符串时间 struct_time默认就是time.localtime()时间
# print(time.strptime('2016-09-08 18:48:35','%Y-%m-%d %H:%M:%S')) # 转换成格式化时间
# struct_time = time.strptime('2016-09-08 18:48:35','%Y-%m-%d %H:%M:%S')
# print(struct_time.tm_year)
# print(struct_time.tm_mon)
# print(struct_time.tm_mday)
# print(time.ctime(3600)) # 转换时间戳转换成可读时间
# help(time.mktime)
print(time.mktime(time.localtime())) # 转换可读时间成时间戳
import datetime
print(datetime.datetime.now()) # 打印精确时间
2 random模块
#!/usr/bin/env python
# __Author__: "wanyongzhen"
# Date: 2017/4/8
import random
# print(random.random()) # 0 - 1 的随机数,不包括 0 和 1
#
# print(random.randint(1,8)) # 1 - 8 的随机数,包括1和8
#
# print(random.choice('hello')) # 随机生成hello字符串的某个元素
#
# print(random.choice(['Python','C++',['Java','PHP']])) # 随机生成list的某个元素
language = ['Python','C++',['Java','PHP']]
random.shuffle(language) # 打乱一个有序序列
print(language)
print(random.sample(language,2)) # 随机生成多个值
print(random.randrange(1,3)) # 1 - 3 的随机整数 包含1 不包含3
# def v_code(): # 生成一个随机的六位数
# code = ''
# for i in range(6):
# add_num = random.randrange(10)
# code += str(add_num)
# print(code)
# v_code()
def v_code(): # 生成一个随机的六位数
code = ''
for i in range(6):
# if i < random.randint(0,5):
# add_element = random.randrange(10)
# else:
# add_element = chr(random.randrange(65,91))
add_element = random.choice([random.randrange(10),chr(random.randrange(65,91)),chr(random.randrange(97,122))])
code += str(add_element)
print(code)
v_code()
3 hashlib模块
#!/usr/bin/env python
# __Author__: "wanyongzhen"
# Date: 2017/4/6
import hashlib # 主要用于加密 算法:md5 sha等等
# # md5 加密
# m=hashlib.md5() # hashlib.md5() 返回一个class类型
# print(m)
# m.update('hello world'.encode('utf8')) # 5eb63bbbe01eeed093cb22bb8f5acdc3
# print(m.hexdigest())
# m.update('alex'.encode('utf8'))
# print(m.hexdigest()) # 82bb8a99b05a2d8b0de2ed691576341a
#
# # 与上面得到的结果相同
# m2=hashlib.md5()
# m2.update('hello worldalex'.encode('utf-8'))
# print(m2.hexdigest()) # 82bb8a99b05a2d8b0de2ed691576341a
# sha 加密 与md5加密调用原理相似
# s=hashlib.sha256()
# print(s)
# s.update('hello world'.encode('utf8'))
# print(s.hexdigest())
4 os模块
#!/usr/bin/env python
# __Author__: "wanyongzhen"
# Date: 2017/4/6
import os # 调用系统命令完成任务的一个模块
# print(os.getcwd()) # 获取当前工作目录
# os.chdir('/Users/wanyongzhen/PycharmProjects/python4期/') # 切换工作目录
print(os.getcwd())
# print(os.curdir) # 返回当前目录:(.)
# print(os.pardir) # 返回当前目录的父级目录:(..)
# os.makedirs('./Day21/os/module/test') # 相当于:mkdir -p ./Day21/os/module/test
# os.removedirs('./Day21/os/module/test') # 递归删除空目录 相当于:rmdir ./Day21
# os.mkdir('./Day21') # 相当于:mkdir ./Day21
#
# os.rmdir('./Day21') # 相当于:rmdir ./Day21
# print(os.listdir('../')) # 相当于ls,返回值是list数据类型
# os.remove('./test.txt') # 相当于:rm -f ./test.txt 只能删除文件
# os.rename('./test.txt','./test_rename.txt') # 相当于:mv ./test.txt ./test_rename.txt
# os.rename('./test','./test_rename') # 相当于:mv ./test ./test_rename
# print(os.stat('./')) # 获取文件状态 返回类型是class
# print(os.stat('./os_module.py')) # 获取目录状态 返回类型是class
# info_file=os.stat('./os_module.py')
# info_dir=os.stat('./')
# print(info_file.st_size) # 文件大小
# print(info_dir.st_size) # 目录大小
# print(info_file.st_mtime) # 文件修改时间
# print(info_dir.st_mtime) # 目录修改时间
# print(os.sep) # 获取路径分隔符
# print(os.linesep) # Mac:"
" Linux:"
" Windows:"
"
# print(os.pathsep) # 输出用于分割文件路径的字符串
# print(os.name) # 用于输出当前系统平台
# print(os.system('ls')) # 执行shell命令
# print(os.environ) # 打印环境变量 返回值是一个字典
# print(os.path.abspath('./os_module.py')) # 将当前目录转换成绝对路径
# print(os.path.split('./os_module.py')) # 将路径分割成目录和文件名 返回值是一个元组
# print(os.path.dirname('/Users/wanyongzhen/PycharmProjects/python4期/Day20/os_module.py')) # 获取文件所在目录名
#
# print(os.path.basename('/Users/wanyongzhen/PycharmProjects/python4期/Day20/os_module.py')) # 获取文件名
#
# print(os.path.exists('./os_module.py')) # 如果文件或目录存在,则返回True 否则返回False
#
# print(os.path.isabs('./os_module.py')) # 如果路径是一个绝对路径则返回True
#
# print(os.path.isfile('./os_module.py')) # 如果路径是一个文件并且该文件存在,则返回True 否则返回False
#
# print(os.path.isdir('./os_module.py')) # 如果路径是一个目录并且该目录存在,则返回True 否则返回False
# print(os.path.join('path1','path2','path3')) # 将多个路径组合后返回
# print(os.path.getatime('./os_module.py')) # 返回指定的文件或目录的最近访问时间
# print(os.path.getmtime('./os_module.py')) # 返回指定的文件或目录的最近修改时间
5 sys模块
#!/usr/bin/env python
# __Author__: "wanyongzhen"
# Date: 2017/4/6
import sys # 与Python解释器进行交互
# print(sys.argv) # 获取脚本运行时传递的参数,返回值是一个list,第一个元素是文件名
# 实现根据传递的参数执行不同功能
# def post():
# print('Post OK')
#
# def download():
# pass
#
# if sys.argv[1] == 'post':
# post()
# elif sys.argv[1] == 'download':
# download()
# RETVAL=0 # 定义返回值RETVAL
# sys.exit(RETVAL) # 退出程序并返回值 与Linux shell的 exit RETVAL 相似 0表示正常退出 非0表示非正常退出
# print(sys.path) # 打印Python所有模块的搜索路径 与Shell的PATH变量相似
# print(sys.platform) # 返回操作系统平台
# 实现根据sys.platform执行不同的命令
# import os
# if sys.platform == 'win32':
# os.system('dir')
# else:
# os.system('ls')