python常用内建模块

#python常用内建模块

#1、datetime
from datetime import datetime

#日期格式
date = datetime.now()  #获取当前日期时间:2017-07-13 11:02:19.800237
print(date)

#获取当前时间戳
timestamp = date.timestamp() #获取当前时间戳:1499914939.800237 ,还可以使用time模块的print(time.time())
print(timestamp)

#日期转时间戳
timestamp = date.timestamp() #1499914939.800237
print(timestamp)

#时间戳转化日期
date2 = datetime.fromtimestamp(timestamp)
print(date2)

#日期转化为字符串并格式化
date2StrFormat = date.strftime('%Y-%m-%d %H:%M:%S')
print(date2StrFormat) #'2017-07-13 10:55:07'

#字符串转化为日期并格式化
str2DateFormat = datetime.strptime(date2StrFormat,'%Y-%m-%d %H:%M:%S')
print(str2DateFormat)


#2、collections模块
#2.1 namedtuple:让tuple变成对象属性调用
from collections import namedtuple
Point = namedtuple('Point',['x','y'])
p = Point(1,2)
print(p.x) #1
print(p.y) #2

#2.2 deque:由于list插入、删除比较慢,deque解决这个问题,并且除了提供append、pop从右边压入、弹出之外,还提供appendleft、popleft,实现队列
from collections import deque
q = deque([1,2,3])
q.append(4)
print(q) #1234
q.appendleft(5)
print(q) #51234
print(q.pop())#4
print(q)#5123
print(q.popleft())#5
print(q)#123

#2.3 defaultdict:使用字典,如果取一个不存在的值会报错,使用defautdict可以预先定义不存在的返回值
from collections import defaultdict

d = defaultdict(lambda:'不存在')
d['x'] = 111
print(d['x']) #111
print(d['y']) #不存在

#2.4 OrderedDict:有序的字典
from collections import OrderedDict
d = OrderedDict()
d['x'] = 1
d['y'] = 2
d['z'] = 3
print(d) #OrderedDict([('x', 1), ('y', 2), ('z', 3)])


#3、base64
import base64

copyright = 'Copyright (c) 2012 Doucube Inc. All rights reserved.'
# 转成bytes string
bytesString = copyright.encode(encoding="utf-8")
print(bytesString) #  b'Copyright (c) 2012 Doucube Inc. All rights reserved.'

# base64 编码
encodestr = base64.b64encode(bytesString)
print(encodestr)#   b'Q29weXJpZ2h0IChjKSAyMDEyIERvdWN1YmUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLg=='
print(encodestr.decode())#  Q29weXJpZ2h0IChjKSAyMDEyIERvdWN1YmUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLg==

# 解码
decodestr = base64.b64decode(encodestr)
print(decodestr.decode())# Copyright (c) 2012 Doucube Inc. All rights reserved.

#url传递的base64编码
base64.urlsafe_b64encode()
base64.urlsafe_b64decode()


#4、hashlib中的md5与sha1
import hashlib

md5 = hashlib.md5()
md5.update('zifuchuan')
md5.hexdigest()

sha1 = hashlib.sha1()
sha1.update('字符串')
md5.hexdigest()

#5、itertools
#5.1 chain :可以把一组迭代对象串联起来,形成一个更大的迭代器:
import itertools
for c in itertools.chain('ABC','XYZ'):
    print(c) #A B C X Y Z

#5.2 groupby:吧相邻重复的元素挑出来
import itertools
for key,group in itertools.groupby('AAABBBCCCDDD'):
    print(key,list(group))



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值