zoukankan      html  css  js  c++  java
  • Python Day6

    一 文件格式补充

     在python3中,除字符串外,所有数据类型在内存中的编码格式都是utf-8,而字符串在内存中的格式是Unicode的格式。

     由于Unicode的格式无法存入硬盘中,所以这里还有一种字节的数据类型(bytes)。而bytes的编码格式就是除Unicode以外的所有编码格式。

     可以将字符串类型转换成bytes数据类型。转换方法如下

    a='sadsa'
    a=a.encode('utf-8')
    print(a,type(a))
    输出结果
    b'sadsa' <class 'bytes'>

    汉字用bytes数据类型表示是用十六进制的数字表示的

    二 字符串的其他方法和功能

    1 casefold:全部变成小写 ,包含小语种

     a='sdFEFf'
     print(a.casefold())
    输出结果
    sdfeff

    2 center :填充;  ljust:右边填充  rjust:左边填充(注意

    a.rjust(10,'=')
    表示输出的总长度为零
    a='dss'
    print(a.ljust(10,'#'))   #右边填充
    输出结果
    dss#######
     a='dsf'
     print(a.rjust(10,'='))   #左边填充
    输出结果
    =======dsf

     3 expandtabs:缩进,主要用于制表  :换行符        :空格符

    a='name	age
    fangjie	18'
    print(a.expandtabs(10))
    输出结果
    name      age
    fangjie   18

    4.count:计算字符出现个数

     a='dfsfffff'
     print(a.count('f'))     #计算个数
    输出结果
    6

    5 find :索引值,找到第一个位置的索引值过后就会再去找,没有该字符就会返回-1

    a='effdf'
    print(a.find('f'))
    输出结果
    1

    6 index :功能和find一样,但是没有该字符,就会报错

    a='effdf'
    print(a.index('f'))
    输出结果
    1

    7 format :占位符的功能,需要几个值就传几个值,还可以和*   **同时使用,有四种用法

    a='我叫{0}{0},爱{1}'
    print(a.format(柳','吃'))
    输出结果
    我叫柳柳,爱吃

    8 format_map 占位符的功能,但是只能用于字典的格式

    a='姓名:{name},年龄{age}'
    print(a.format_map({'name':'柳','age':18}))
    输出结果
    姓名:柳,年龄18

    9 isalnum : 判断是否为数字,字母和文字

    a='fan既然2132'
    print(a.isalnum())
    输出结果
    True

    10 isalpha:判断是否为字母和文字

    a='fan既然'
    print(a.isalpha())
    输出结果
    True

    11 isdecimal:判断是否是数字,只能用于单纯的数字

    issigit:判断是否是数字,可以用于符好的数字

     isnumeric:判断是否是数字,不仅可以识别符号的数字,还剋有识别大写的文字数字

    a='21'
    print(a.isdecimal())
     
    a='332②'
    print(a.isdigit())
     
    a='②21十八'
    print(a.isnumeric())

    输出结果
    True
    True
    True

    12  isprintable:判断是否可以打印

     
    a='sa
    dsf	sdf'
    print(a.isprintable())

    输出结果
    False
    13 isspace:判断是否全是空格
    a='     '                 
    print(a.isspace())
    
    输出结果
    True

    14 istitle:判断是否是标题,标题的每个单词首字母都认识大写

    a='Is Am Fang'
    print(a.istitle())
    
    
    输入结果
    
    Ture

    15 isupper:判断是否全是大写

    a='AJD'
    print(a.isupper())
    
    
    输入结果
    
    True

    16 partition:从左到右寻找分隔符分割,并打印分割的元素,但是找到了第一个就停止该功能

    a='2+3+5'
    print(a.partition('+'))
    
    输入结果

    17 rpartition:从右到左寻找分隔符分割,并打印分割的元素,但是找到了第一个就停止该功能

     a='2+3+5'
    print(a.rpartition('+'))
    
    
    输出结果
    ('2+3', '+', '5')

    18 swapcase:大写变小写,小写变大写

    a='sdDS'
    print(a.swapcase())
    
    输出结果
    SDds

    19 maketrans和translate:maketrans:字符的对应关系,translate:替换对应关系一般这两个是一起使用的

    
    
    table=str.maketrans('dfag','1234')
    a='sdfsdgs'
    print(a.translate(table))
    
    
    输出结果
    
    s12s14s
    
    

    20 split:从开始寻找分割符;raplit:从右到左开始寻找分割符,都可以传两个参数,一个是以什么分割的参数,第二个是分个几次。默认按最多的分割

    
    
    a='dfgsdfdsd'
    print(a.split('f'))
     
    a='dffgsdfdsd'
    print(a.rsplit('f',1))

    输出结果

    ['d', 'gsd', 'dsd']
    ['dffgsd', 'dsd']

    
    

     21 islower:判断是否全是小写

    
    
    a='dsfas'
    print(a.islower())

    输出结果
    True
    22 zfill:填充,只能用0填充,是从开始位置填充的
    a='dsfa'
    print(a.zfill(20))  
    
    
    
    输出结果
    
    
    0000000000000000dsfa

     三 数字类型补充

    1  to_bytes:将数字转换成字节

     
    a = 13
    print(a.to_bytes(5, 'big'))  # big 将转换的数字放在最后面
    
    a = 13
    print(a.to_bytes(5, 'little'))  # little 将转换的数字放在最前面
    
    
    
    输出结果
    b'x00x00x00x00
    '
    b'
    x00x00x00x00'
    2 from_bytes:将字节转换成数字
    a = b'x02x00x00x00x00x00'
    print(int.from_bytes(a,'little'))    #little:数字在开始位置使用
    
    a = b'x00x00x00x00x00x02'
    print(int.from_bytes(a,'big'))       #big:数字在最后位置使用
    
    输出结果
    2
    2

     四 列表的功能补充

    列表在修改元素时,是不会更改内存地址的,而是在原有的内存地址上进行修改

     a=[1,2,3]

    a=[1,2,3]
    b=a
    print(a,b)
    a.append(4)
    print(a,b)
    b.append(5)
    print(a,b)
    
    
    输出结果
    [1, 2, 3] [1, 2, 3]
    [1, 2, 3, 4] [1, 2, 3, 4]
    [1, 2, 3, 4, 5] [1, 2, 3, 4, 5]

    1 clear 清空列表

    li=[1,2,3,4]
    li.clear()
    print(li)
    
    输出结果
    []

    2 copy :拷贝  浅拷贝只拷贝第一层;深拷贝拷贝到最里面一层

    li=[1,2,3,4]
    l2=li.copy()
    li.append(5)
    print(li,l2) #拷贝
     输出结果 [1, 2, 3, 4 5] [1, 2, 3, 4]

    3 count :计算个数

    a=[1,2,3,4,2,3,2]
    print(a.count(2))
    
    
    输出结果
    3

    4 extend :扩展

    li=[1,2,3,4,5]
    l1=[5,6,7]
    li.extend(l1)    #扩展
    print(li)
    
    输出结果
    [1, 2, 3, 4, 5, 5, 6, 7]

     5 index :索引

    li=[1,2,3,4,5]
    print(li.index(4))
    
    输出结果
    
    3

    6 pop:按照索引删除

    li=[1,2,3,4,5]
    li.pop(3)
    print(li)
    输出结果

    [1, 2, 3, 5]



     7 remove :按照对象值删除

    li=[1,2,3,45,6]
    li.remove(45)
    print(li)
    
    输出结果
    
    [1, 2, 3, 6]

     8 sort :排序   True从大到小排序 ; False按照从大到小

     
    li=[1,2,3,4,5,6]
    li.sort(reverse=True)     #排序  True从大到小,False从小到大
    print(li)
    
    
    输出结果
    [6, 5, 4, 3, 2, 1]

    五 元组功能补充

    1  index   :索引

    a=(1,2,3,4,5)
    print(a.index(4))
    
    输出结果
    
    3

    2 count : 计算个数

    a=(1,2,3,2,1,2,2,)
    print(a.count(2))
    
    
    输出结果
    4

     

    
    
    
    
    
     
  • 相关阅读:
    Asp.net2.0 中自定义过滤器对Response内容进行处理 dodo
    自动化测试工具 dodo
    TestDriven.NET 2.0——单元测试的好助手(转) dodo
    JS弹出窗口的运用与技巧 dodo
    ElasticSearch 简介 规格严格
    修改PostgreSQL字段长度导致cached plan must not change result type错误 规格严格
    Linux系统更改时区(转) 规格严格
    mvn编译“Cannot find matching toolchain definitions for the following toolchain types“报错解决方法 规格严格
    ElasticSearch 集群 & 数据备份 & 优化 规格严格
    Elasticsearch黑鸟教程22:索引模板的详细介绍 规格严格
  • 原文地址:https://www.cnblogs.com/liuduo/p/7420044.html
Copyright © 2011-2022 走看看