• day 6 内置函数模块+ 正则表达式


    一.正则表达式:
    1.1正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎 正则表达式常用语法:
    .匹配任意除换行符“ ”
    转义字符串有字符*需要匹配,可以使用*或者字符集
    d 匹配数字[0-9]
    D 非数字
    s 空白字符
    S 非空白字符
    w 单词字符
    W 非单词字符
    * 匹配前一个字符0 或无限次
    + 匹配前一个字符1次或者无限次
    ?匹配前一个字符0次或者一次
    {m} 匹配前一个字符多少次
    {m,n} 匹配前一个字符m至n次
    ^ 、
    配字符串开头 在多行模式中匹配每一行的开头
    $ 匹配字符串的末尾 多行匹配每一行的末尾
    A 仅匹配字符串的开头
     仅匹配字符串的末尾
    | 代表左右表达式匹配, 优先匹配左边的表达式,一旦匹配成功跳过匹配右边的表达式,没有包括在()中则是整个表达式
    二.内置函数
    1.数学相关
    绝对值:abs(-1)
    最大最小值:max([1,2,3])、min([1,2,3])
    序列长度:len('abc')、len([1,2,3])、len((1,2,3))
    取模:divmod(5,2)//(2,1)
    pow(2,3,4)//2**3/4
    浮点数:round(1)//1.0
    2.函数是否可调用:
    callable(funcname),注意,funcname变量要定义过
    类型判断:isinstance(x,list/int)
    比较:cmp('hello','hello')
    三、类型转换
    int(x)
    long(x)
    float(x)
    complex(x) //复数
    str(x)
    list(x)
    tuple(x) //元组
    hex(x)
    oct(x)
    chr(x)//返回x对应的字符,如chr(65)返回‘A'
    ord(x)//返回字符对应的ASC码数字编号,如ord('A')返回65
    四.字符串处理
    首字母大写:str.capitalize
    字符串替换:str.replace
    字符串切割:str.split
    五.序列处理
    len:序列长度
    max:序列中最大值
    min:最小值
    filter:过滤序列 例子 filter(lambda x:x%2==0, [1,2,3,4,5,6])
    zip:并行遍历
    reduce:归并
    =======================================
    random 模块
    print(random.random())#(0,1)----float 大于0且小于1之间的小数
    print(random.randint(1,3)) #[1,3] 大于等于1且小于等于3之间的整数
    print(random.randrange(1,3)) #[1,3) 大于等于1且小于3之间的整数
    print(random.choice([1,'23',[4,5]]))#1或者23或者[4,5]
    print(random.sample([1,'23',[4,5]],2))#列表元素任意2个组合
    print(random.sample([1,'23',[4,5]],2))#列表元素任意2个组合
    random.shuffle(item) #打乱item的顺序,相当于"洗牌"

    六 json 模块
    json,用于字符串 和 python数据类型间进行转换,Json模块提供了四个功能:dumps、dump(序列化,存)、loads(反序列化,读)、load 跨语言进行json转换 JSON只能处理基本数据类型

    mport json
    dic={'name':'egon','age':18}
    
    print(type(json.dumps(dic)))  # 转换成python语言是别的字符串
    
    with open('a.json','w') as f: #转换成python识别的语言 写入到文件
         f.write(json.dumps(dic))
    
     with open('a.json','r') as f: #从文件里面读取内容转换成python识别的对象
         data=f.read()
         dic=json.loads(data)
         print(dic['name'])
    
     dic={'name':'egon','age':18}
     json.dump(dic,open('b.json','w')) #转换成python语言写入到文件
     print(json.load(open('b.json','r'))['name']) #从文件读取内容转换成python识别的语言

    七 picikle模块
    pickle能处理所有Python的数据类型,pickle用于Python程序对象的持久化或者Python程序间对象网络传输,但不同版本的Python序列化可能还有差异。

    import pickle
    
     dic={'name':'egon','age':18}
    
     print(pickle.dumps(dic))     #转换成python识别的字符串
     with open('d.pkl','wb') as f:
         f.write(pickle.dumps(dic))
    
     with open('d.pkl','rb') as f: #读取转换成python是别的语言
         dic=pickle.loads(f.read())
         print(dic['name'])
    
     dic={'name':'egon','age':18}  
    pickle.dump(dic,open('e.pkl','wb')) #写入文件
    
    
    print(pickle.load(open('e.pkl','rb'))['name'])#文件读取
  • 相关阅读:
    android开发系列之gradle认识
    angularjs+nodejs+mongodb三件套
    我对服务端开发的一些认识
    近几个月的技术总结
    IOS设计模式的六大设计原则之单一职责原则(SRP,Single Responsibility Principle)
    第二阶段第八次站立会议
    第二阶段第七次站立会议
    第二阶段第六次站立会议
    第二阶段第五次站立会议
    第二阶段第四次站立会议
  • 原文地址:https://www.cnblogs.com/wangshaojie/p/7306061.html
Copyright © 2020-2023  润新知