Python学习---重点模块的学习【all】
time [时间模块]
import time
# print(help(time)) # time模块的帮助
print(time.time()) # 时间戳
print(time.clock()) # 计算CPU执行的时间
print(time.ctime()) # 默认当前时间 Sun Dec 10 22:07:16 2017
print(time.ctime(1512914742)) # 秒转换为时间 Sun Dec 10 22:05:42 2017
print(time.mktime(time.localtime())) # 当前时间转换为时间戳
print(time.strftime('%F %X')) # 2017-12-10 22:05:42
print(time.localtime()) #time.struct_time(tm_year=2017, tm_mon=12, tm_mday=10, tm_hour=22, tm_min=4, tm_sec=47, tm_wday=6, tm_yday=344, tm_isdst=0)
time.sleep():不调用CPU资源
datetime [时间模块]
import datetime
import time
print(datetime.datetime.now()) # 2017-12-10 22:10:51.364760
print(time.ctime()) # Sun Dec 10 22:12:23 2017
print(time.strftime('%F %X')) # 2017-12-10 22:05:42 超时:
import datetime
timeout = datetime.datetime.now() + datetime.timedelta(seconds=10) # 10秒
timeout2 = datetime.datetime.now() + datetime.timedelta(days=10) # 10 天·
random [随机模块]
import random
print(random.random()) # 取值范围[0-1]
print(random.random()*100) # 取值范围[0-100]
print(random.randint(1, 8)) # 取值范围[1-8]
print(random.choice('hello')) # 取值范围[hello]
print(random.choice(['hello', 'world', '2017'])) # 取值范围['hello', 'world', '2017']
print(random.sample(['1', '2', '3', '5'], 2)) # 取值范围从['1', '2', '3', '5']中取出2个值
print(random.randrange(1, 7)) # 取值范围[1, 7), 左闭右开,推荐
os [操作系统]
import os
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dirname1/dirname2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","newname") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep 输出用于分割文件路径的字符串
os.name 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
os.path.abspath(path) 返回path规范化的绝对路径
os.path.split(path) 将path分割成目录和文件名二元组返回
os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) 如果path是绝对路径,返回True
os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间print('parent process:', os.getppid())
print('process id:', os.getpid())
import os
import time os.chdir(r'c:\Users') # r代表正则,Py内置函数会自动替换此,代表输入即输出,不做特殊字符的替换
# os.removedirs('test\\tt') # 只能删除空文件夹,如果文件夹内有内容,则返回上一层查找
# os.makedirs('test\\tt') # 带一个\代表转义字符,表示在c:\User创建了test,test下创建了tt
# os.mkdir('hhh') # 创建单个文件夹
# os.rmdir('hhh') # 删除单个空文件夹
# os.rmdir('test\\tt') # 删除单个空文件夹tt,仅仅删除tt一个文件夹
# os.remove('test\hhh.txt') # 删除test下面的hhh.txt文件
# os.renames('test\\tt', 'test\\ttt') # 重命名文件/文件夹
# print(os.sep) # 文件的分隔符,Win:\, Linux: /
# print('os.linesep: ', os.linesep) # 换行分隔符, Win:\r\n Linux:\n
# print(os.pathsep) # 路径分隔符号,例如环境变量, Win:; Linux: :
# print('os.name: ', os.name) # 字符指出当前使用系统名称, Win:nt Linux:posix
# print(os.system('dir')) # 执行系统命令
# print(os.environ) # 显示系统环境变量
# print(os.stat('test\\ttt\hhh.txt')) # 获取文件的信息,包括文件的创建时间,更改等信息
# print(os.stat('test'+os.sep+'ttt'+os.sep+'hhh.txt'))
# print(os.listdir(os.getcwd()))# 获取当前路径下的内容
# print(os.path.abspath('./test')) # 显示文件的绝对路径
# print(os.path.split(r'c:\Users\test\ttt\hhh.txt')) # 将文件的路径和文件切割,返回一个元组
# print(os.path.dirname(r'c:\Users\test\ttt\hhh.txt')) # 返回文件所在的路径名称
# print(os.path.basename(r'c:\Users\test\ttt\hhh.txt')) # 返回文件所在的文件名称
# print(os.curdir) # 获取当前的路径,.代表当前路径,..代表上一级目录
# print(os.getcwd()) # 相当于Linux下的pwd
# os.mkdir('hhh') # 当前路径创建文件夹
print('parent process:', os.getppid()) # 获取父进程号
print('process id:', os.getpid()) #获取自己的进程号
sys [Py解释器]
sys.argv 命令行参数List,第一个元素是程序本身路径
sys.exit(n) 退出程序,正常退出时exit(0)
sys.version 获取Python解释程序的版本信息
sys.maxint 最大的Int值
sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform 返回操作系统平台名称
sys.stdout.write('please:')
val = sys.stdin.readline()[:-1]
import sys
# print(sys.version) # 获取Python解释程序的版本信息
# print(sys.maxsize) # 最大的Int值 9223372036854775807
# print(sys.platform) # 返回操作系统平台名称 win32
# print(sys.path) # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
# print(sys.path.append('绝对路径'))
# print(sys.stdout.write(sys.version)) # 标准输出
# val = sys.stdin.readline()[:-1]# 标准写入
# print(val)
hashlib [加密算法]
MD5 加密算法:单向,不可逆算法
import hashlib
m = hashlib.md5() # 创建hash对象
# Py3中默认是unicode编码,我们需要的是一个字符bytes类型[二进制],所以需要转换
m.update('hello world'.encode('utf-8'))
print(m.digest()) # 二进制显示的十六进制
print(m.hexdigest()) # 返回一个十六进制[0-9a-f]的明文 5eb63bbbe01
Sha256 加密算法:单向,不可逆算法
import hashlib
# sha256 加密算法
sha = hashlib.sha256() # sha256用到最多
sha.update('hello world'.encode('utf-8'))
print(sha.hexdigest()) # b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9
logging [日志模块]
configparse[配置模块]
re [正则模块]
subprocess [执行命令]
uuid
根据机型等特性产生一个字符串,一般来说是不重复的
import uuid print(uuid.uuid1()) # 唯一的表示
# print(uuid.uuid4()) # 会随机产生
json
pickle
shelve
xml
importlib

Python学习---重点模块的学习【all】的更多相关文章
- Python学习---重点模块之re
正则表达式是用来操作字符串,但是字符串提供的正则是完全匹配,有时候我们需要进行模糊匹配,这个时候就需要正则表达式了.通过re模块来实现,由C语言来执行底层的匹配 字符匹配(普通字符,元字符): 1 普 ...
- Python学习---重点模块之subprocess
subprocess是用来执行系统程序,查看系统的模块, 查看当前目录 第一种方法: import subprocess # subprocess会单独自己开辟一个线程,内部是多线程 # stdout ...
- Python学习---重点模块之logging
日志级别 日志级别 critical > error > warning > info > debug, 默认是从warning开始打印 import logging # 日 ...
- Python学习---重点模块之configparse
configparse模块常用于生成和修改常见的配置文档 生成配置模块:用字典写 import configparser config = configparser.ConfigParser() co ...
- Python学习---重点模块之json
注意:JSON不能转换类,不能转换函数 重点方法示例 json.dumps():实现文件写入,字符串转换[写入文件当然是JSON字符串楼] 实际上,json.dumps()只是帮我们做了一个字符串的转 ...
- Python学习---重点模块之pickle
仅仅支持Python里面的函数等相关功能的实现,而且pickle写入的内容是看不出来的,读取的时候要求有原内容 pickled的写入: import pickle def fun(): print(' ...
- Python学习---重点模块之shelve
简单示例 import shelve f = shelve.open(r'shelve.txt') f['info'] = {'name':'ftl', 'age':23, 'sex': 'male' ...
- Python学习---重点模块之xml
xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单 数据准备 <?xml version="1.0"?> <data&g ...
- python异步编程模块asyncio学习(二)
尽管asyncio应用通常作为单线程运行,不过仍被构建为并发应用.由于I/O以及其他外部事件的延迟和中断,每个协程或任务可能按一种不可预知的顺序执行.为了支持安全的并发执行,asyncio包含了thr ...
随机推荐
- 20.Class的继承
1.简介 Class 可以通过extends关键字实现继承,这比 ES5 的通过修改原型链实现继承,要清晰和方便很多 class Point { } class ColorPoint extends ...
- 《LeetBook》LeetCode题解(1) : Two Sum[E]——哈希Map的应用
001.Two Sum[E] Two SumE 题目 思路 1双重循环 2 排序 3 Hashmap 1.题目 Given an array of integers, return indices o ...
- DotNetCore跨平台~autofac属性的自动注入
回到目录 在使用autofac这个DI工具时,我们一般使用的是构造方法注入,而dotnetcore的标准框架里也集成了构造方法注入,而属性注入在一些场景下,表现的更为灵活,像java的spring框架 ...
- iview中使用Tag时进行数据的变化和实现将输入内容转化为标签输出数组
上代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title ...
- BEA WebLogic平台下J2EE调优攻略--转载
BEA WebLogic平台下J2EE调优攻略 2008-06-25 作者:周海根 出处:网络 前 言 随着近来J2EE软件广泛地应用于各行各业,系统调优也越来越引起软件开发者和应用服务器提供 ...
- Svg和canvas的区别,伪类选择器有哪些(归类)
区别一:svg绘制出来的每一个图形的元素都是独立的DOM节点,能够方便的绑定事件或用来修改.canvas输出的是一整幅画布: 区别二:svg输出的图形是矢量图形,后期可以修改参数来自由放大缩小,不会是 ...
- 每天一道leetcode234-回文链表
考试结束,班级平均分只拿到了年级第二,班主任于是问道:大家都知道世界第一高峰珠穆朗玛峰,有人知道世界第二高峰是什么吗?正当班主任要继续发话,只听到角落默默想起来一个声音:”乔戈里峰” 前言 2018. ...
- Golang之并发资源竞争(读写锁)
前面的有篇文章在讲资源竞争的时候,提到了互斥锁.互斥锁的根本就是当一个goroutine访问的时候,其他goroutine都不能访问,这样肯定保证了资源的同步,避免了竞争,不过也降低了性能. 仔细剖析 ...
- mysql 最小配置 及 安装
[mysqld] # 设置3306端口 port= # 设置mysql的安装目录 basedir=D:\-Installer\-MySQL\mysql--winx64 # 设置mysql数据库的数据的 ...
- Spring.Net---4、IoC/DI注入方式
spring.net里实现了控制反转IOC(Inversion of control),也即依赖注入DI(Dependency Injection),以达到解耦的目的,实现模块的组件化.程序在调用sp ...