• 2020/2/14-Python学习计划


    Python常用内建模块(一)

    datetime

    datetime是Python处理日期和时间的标准库。

    >>> from datetime import datetime
    >>> now = datetime.now()
    >>> print(now)
    2020-02-15 10:12:55.713562
    >>> print(type(now))
    <class 'datetime.datetime'>
    >>>
    

      

    datetime是模块,datetime模块还包含一个datetime类,通过from datetime import datetime导入的才是datetime这个类。

    如果仅导入import datetime,则必须引用全名datetime.datetime

    datetime.now()返回当前日期和时间,其类型是datetime

    获取指定日期和时间

    >>> from datetime import datetime
    >>> dt = datetime(2020,2, 20, 12, 20) # 用指定日期时间创建datetime
    >>> print(dt)
    

      

    datetime表示的时间需要时区信息才能确定一个特定的时间,否则只能视为本地时间。

    如果要存储datetime,最佳方法是将其转换为timestamp再存储,因为timestamp的值与时区完全无关。

    namedtuple

    namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素。

    这样一来,我们用namedtuple可以很方便地定义一种数据类型,它具备tuple的不变性,又可以根据属性来引用,使用十分方便。

    deque

    使用list存储数据时,按索引访问元素很快,但是插入和删除元素就很慢了,因为list是线性存储,数据量大的时候,插入和删除效率很低。

    deque是为了高效实现插入和删除操作的双向列表,适合用于队列和栈:

    deque除了实现list的append()pop()外,还支持appendleft()popleft(),这样就可以非常高效地往头部添加或删除元素。

    defaultdict

    使用dict时,如果引用的Key不存在,就会抛出KeyError。如果希望key不存在时,返回一个默认值,就可以用defaultdict.

    默认值是调用函数返回的,而函数在创建defaultdict对象时传入。

    除了在Key不存在时返回默认值,defaultdict的其他行为跟dict是完全一样的。

    OrderedDict

    使用dict时,Key是无序的。在对dict做迭代时,我们无法确定Key的顺序。

    如果要保持Key的顺序,可以用OrderedDict

    base64

    Base64是一种用64个字符来表示任意二进制数据的方法。

    用记事本打开exejpgpdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的文本处理软件能处理二进制数据,就需要一个二进制到字符串的转换方法。Base64是一种最常见的二进制编码方法。

    Base64的原理很简单,首先,准备一个包含64个字符的数组:

    struct

    Python提供了一个struct模块来解决bytes和其他二进制数据类型的转换。

    structpack函数把任意数据类型变成bytes

  • 相关阅读:
    华为OSPF与ACL综合应用
    综合练习2 设置访问权限,Easy-IP访问外网,内外网访问
    综合练习1,划分vlan,单臂路由,DHCP服务及其限制网段、租期,设置根桥,OSPF路由通告综合练习
    在eNSP下使用Hybird接口
    在eNSP上配置VLAN的Trunk端口
    在ensp上模拟企业网络场景并Access接口加入相应VLAN
    网络安全设备
    WooYun虚拟机的搭建以及配置
    IIS web服务器访问日志
    apache访问日志目录以及术语返回码
  • 原文地址:https://www.cnblogs.com/fuheishi/p/12310803.html
Copyright © 2020-2023  润新知