• python模块


    collections模块:python中扩展数据类型

    from collections import namedtuple
    p=namedtuple('名字',['x','y']):可命名元祖
    pi=p(1,2)
    print(pi.x)
    print(pi.y)
    print(pi)
    可命名元祖
    FIFO:队列
    import queue
    q=queue.Queue()
    q.put(10)
    q.put(5)
    print(q):内存地址
    print(q.get())
    
    q.qsize():里面有几个值
    队列
    from collections import deque
    d=deque([1,2])
    d.append('内容'):从后面放数据
    d.appendleft('内容'):从前面放数据
    d.pop():从后面取数据
    d.popleft():从前面取数据
    d.insert('索引','要插入的内容'):指定插入
    print(d)
    双端队列
    from collections import OrderedDict
    od=OrderedDict([('a',1),('a',2)]):有序的字典
    print(od)
    取值还是一样的取
    有序的字典
    from collections import defaultdict
    d=defaultdict(list)
    d=defaultdict(lambda:你想要的值):你想要的值
    print(d['k'])
    豪自己看
    from collections import Counter
    c=Counter('abcab')
    print(c)
    元素出现的次数

    time时间模块:跟时间有关系的模块

    import time
    time.sleep(停多少秒)
    time.time:获取当前时间,是一个时间戳
    
    格式化时间--字符串:给人看的
    时间戳时间--float时间:计算机看的
    结构化时间--元祖:计算用的
    print(time.strftime('%Y-%m-%d %H:%M:%S')):输出就是当前的时间,年月日时分秒
    
    s=time.localtime():结构化时间
    s.time.tm_year
    
    import time:时间戳转换成结构化时间
    t=time.time()
    print(time.localtime(t))
    print(time.gmtime(t))
    
    print(time.mktime(time.localtime):结构化时间转换成时间戳
    
    time.strptime('2002-12.31','%Y-%m.%d'):格式化时间转换成结构化时间
    
    time.strftime('%m/%d%Y %H:%M:%S'',time.localtime(3000)):结构化时间转换成格式化时间
    
    time.asctime():返回当前的格式化时间
    time.asctime(time.localtime(3000)):结构化时间转换成格式化时间
    time.ctime():返回当前格式化时间
    time.ctime(100000):时间戳转换成格式化时间
    View Code
    %y 两位数的年份表示(00-99%Y 四位数的年份表示(000-9999%m 月份(01-12%d 月内中的一天(0-31%H 24小时制小时数(0-23%I 12小时制小时数(01-12%M 分钟数(00=59%S 秒(00-59%a 本地简化星期名称
    %A 本地完整星期名称
    %b 本地简化的月份名称
    %B 本地完整的月份名称
    %c 本地相应的日期表示和时间表示
    %j 年内的一天(001-366%p 本地A.M.或P.M.的等价符
    %U 一年中的星期数(00-53)星期天为星期的开始
    %w 星期(0-6),星期天为星期的开始
    %W 一年中的星期数(00-53)星期一为星期的开始
    %x 本地相应的日期表示
    %X 本地相应的时间表示
    %Z 当前时区的名称
    %% %号本身
    时间格式化输出表

    random模块:随机数模块

    import random
    随机小数
    random.random():大于0且小于1之间的小数
    random.uniform(1,3):大于1小于3的小数
    随机整数
    random.randint(1,5):大于1且小于等于5之间的整数
    random.randrange(1,10,2):大于等于且小于10之间的奇数
    随机选择一个返回
    random.choice([1,'23',[4,5]]):1或者23或者[4,5]
    随机选择多个返回,放回的个数为函数的第二个参数
    random.sample([1,'23',[4,5]],2):列表元素任意2个组合
    打乱列表顺序
    item=[1,2,3,4,5,]
    random.shuffle(item):打乱次序
    View Code

    os模块:和操作系统打交道的模块

    import os
    os.getcwd():获取当前目录
    os.chdir(r'目录'):改变当前的目录
    os.curdir:返回一个  . 当前目录
    os.pardir:返回两个 .. 上一层目录
    os.makedirs('文件名字/文件名字'):创建两个目录
    os.removedirs('文件名字/文件名字')指定要删除的目录.为空就删除
    os.listdir('目录'):找出所有文件和隐藏文件打印出来是列表
    os.remove():删除一个文件
    os.rename():重命名一个文件
    os.stat(文件名):显示了文件的全部信息
    os.sep():分隔符\  linux  '/'
    os.linesep():输出当前平台使用的行终止符	
         linux '
    '  
    os.pathsep():输出用于分割文件路径的字符串  ;   linux  :
    os.name():输出字符串当前使用的平台 'nt';  linux   'posix'
    
    os.system('dir'):没有返回值,直接执行操作系统
    os.popen('dir').read:有返回值
    os.environ:你系统的环境变量
    
    os.path()
    os.path.abspath(path):返回的绝对路径
    os.path.split(os.getcwd):分割
    os.path.dirname():返回目录
    os.path.basename():返回分割的第二个元素
    os.path.exists():如果文件存在返回True.不在返回False
    os.path.isads():如果是绝对路径,返回True
    os.path.isfile():如果是一个存在的的文件,返回True否则False
    os.path.isdir():如果是一个存在的目录,则返回True.否则返回False
    os.path.join('c:','udsa','add'):自动进行拼接目录
    os.path.getatime():返回所指向的文件或者目录的最后访问时间
    os.path.getmtime():返回所值的文件或者目录的最后修改时间
    os.path.getsize()返回文件的大小
    View Code
    st_mode: inode 保护模式
    st_ino: inode 节点号。
    st_dev: inode 驻留的设备。
    st_nlink: inode 的链接数。
    st_uid: 所有者的用户ID。
    st_gid: 所有者的组ID。
    st_size: 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。
    st_atime: 上次访问的时间。
    st_mtime: 最后一次修改的时间。
    st_ctime: 由操作系统报告的"ctime"。在某些系统上(如Unix)是最新的元数据更改的时间,在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)。
    stat 结构:

    sys模块:和python解释器打交道的模块

    import sys
    print(sys.platform):返回操作系统平台名称
    sys.version:返回你的版本信息
    sys.exit():退出程序,正常退出sys.exit(0),错误退出sys.exit(1)
    sys.path:返回模块的搜索路径
    sys.argv:可以传参数,只能在中端使用
    View Code

    re模块:正则

    import re
    re.findall()=返回所有满足条件的结果,放在列表里
    re.search().group(不要写)=从前往后,找到一个就返回,没有找到就返回None,调用group会报错返回的变量需要调用group才能拿到结果
    re.match()=从头开始匹配,如果正则规则从头可以匹配上,就返回一个变量
    re.split('正则','内容')=按照正则分割,返回一个列表
    re.sub('d','替换','内容',要替换几个)=将什么替换成什么,返回元祖
    re.subn('d','替换','内容')=将什么替换成什么,结果告诉你替换了几次,返回元祖 
    re.compile('正则')=得到一个正则表达式
    re.finditer('正则',内容)=返回一个迭代器,节省内存
    re操作方法

    序列化模块

    import json
    序列化:数字 字符串 列表 字典 元祖 元祖会变成列表
    json.dumps( ):转化成双引号str
    反序列化
    json.loads( ):转回去
    
    文件操作
    json.dump(数据类型,文件句柄):序列化一次性写进文件
    json.load(文件句柄):读出来是写进去的那个数据类型,一次性读出来
    json.dump(数据类型,文件句柄,ensure_ascii=False):文件里能看到中文
    
    什么都可以往里面写
    import pickle
    pickle.dumps( ):转化成双引号str,b丝类型
    反序列化
    pickle.loads( ):转回去
    
    文件操作,加b
    pickle.dump(数据类型,文件句柄):序列化一次性写进文件,,b丝类型你看不懂
    pickle.load(文件句柄):读出来是写进去的那个数据类型,一次性读出来
    
    import shelve
    文件操作
    f=shelve.open('文件名')
    f['key']={'dada':12}:直接对句柄操作,写到文件,文件里你看不懂
    
    f=shelve.open('文件名')
    existing=f['key']:取也要用一样的取,key不存在会报错
    
    f=shelve.open('文件名',writeback='True'):文件所有的修改都会打印出来
    json pickle shelv
  • 相关阅读:
    [公告]Google个性化主页可以正常阅读博客园的RSS了
    致歉
    [公告]网站程序已经升级到ASP.NET 2.0
    GTF: Great Teacher Friedman
    Node.js : exports と module.exports の違い
    拨开历史的迷雾从篡夺者战争到五王之战的政经原因
    javascript模板系统 ejs v10
    window.name + postMessage实现不用代理页的跨域通信
    node.js Domain 時代のエラー処理のコーディングパターン
    鲜为人知的get,set操作符
  • 原文地址:https://www.cnblogs.com/haohaoshang/p/13617043.html
Copyright © 2020-2023  润新知