python time模块 sys模块 collections模块 random模块 os模块 序列化 datetime模块
一 collections模块
collections模块在内置的数据类型,比如:int、str、list、dict等基础之上额外提供了几种数据类型。
参考博客
http://www.pythoner.com/205.html
二 time模块
在Python中共有三种表达方式:1)timestamp 时间戳 2)tuple或者struct_time3)格式化字符串。
三者的转换关系示意图
示例:
import time print(time.ctime()) a=time.localtime() print(time.asctime(a))
输出:
Tue Sep 12 13:40:18 2017
Tue Sep 12 13:40:18 2017
格式化时间中的格式:
三 random模块
方法
random.choice()
random.randint()
random.sample()
import random print(random.randint(1,10)) print(random.choice([1,2,3])) print(random.sample(range(10),2))
输出:
3
2
[4, 2]
应用:
验证码的生成
代码一
import random l=[] for i in range(6): num=str(random.randint(0,9)) alp_big=chr(random.randint(65,90)) alp_sml=chr(random.randint(97,122)) l.append(random.choice([num,alp_big,alp_sml])) print(''.join(l))
代码二
import random l=[] for i in range(6): n=random.randint(0,6) if i==n: l.append(chr(random.randint(97,122))) elif i==n-1: l.append(chr(random.randint(65,90))) else: l.append(str(random.randint(0,9))) print(''.join(l))
四 sys模块
sys模块是与python解释器交互的一个接口。
sys.argv( ) 实现从程序外部向程序内部传值。
sys.exit() 程序退出。
sys.path()返回模块的搜索路径。
五 os模块
os模块包含普遍的操作系统功能,与具体的平台无关。
os.path.join
os.path.getsize()
os.remove(‘xx’) 删除文件
os.system() 运行其他程序或者脚本(调用shell脚本),在windows下就相当于打开出cmd,执行。
os.path.basename() 查看指定文件的文件名,去掉文件的目录。
os.path.exists('xx') 判断文件或者目录是否存在
import os print(os.path.basename(os.path.abspath(__file__)))
输出:
udp_client.py
os.sep 当前操作系统的路径分隔符。
在windows下
import os print(os.sep)
输出:
\
os.system() 运行shell命令
os.system('scrapy crawl cingta')
>>> os.system('cmd')
os.getcwd() 获取当前的工作目录
print(os.getcwd())
输出:
C:\Users\zuo\网易公开课--数据分析\第二章
os.chdir('xx') 切换工作目录
os.listdir() 获取当去工作目录下的所有文件名
print(os.listdir())
输出:
['.ipynb_checkpoints', 'test.ipynb']
六 序列化
博客地址:http://www.cnblogs.com/MnCu8261/p/5539254.html
我们把变量从内存中变成可存储或传输的过程称之为序列化。
反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling。
pickle
pickle是python中独有的,对所有数据类型有有效。提供了dump,dumps,load,loads四种方法。其中dumps,loads作用对象时文件句柄。
json
json是通用的,但是只对列表,字典等基本数据类型有用。
七 datetime模块
datetime是Python处理日期和时间的标准库。
廖雪峰的博客:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431937554888869fb52b812243dda6103214cd61d0c2000
import datetime date=datetime.datetime.now() print(date,type(date))
输出:
2017-12-06 15:58:52.799249 <class 'datetime.datetime'>
注意到datetime
是模块,datetime
模块还包含一个datetime
类,通过from datetime import datetime
导入的才是datetime
这个类。
如果仅导入import datetime
,则必须引用全名datetime.datetime
。
datetime.now()
返回当前日期和时间,其类型是datetime
。