zoukankan      html  css  js  c++  java
  • 基本数据类型方法2

    字符串了解部分

    find,rfind , index , rindex , count

    find  找索引值  
    x = 'qwe ras df'
    res = x.find('ras')  #对应的是索引的值2,如果找没有的返回值为-1
    x.find('ras',0,9)    #在指定范围内查找
    x.rfind  #返回字符串最后一次出现的位置(从右向左查询),如果没有匹配,则返回-1
    
    x.index('ras')  #找索引值,没有则报错
    x.rindex('ras') #从右向左找,没有会报错
    

    center ,ljust ,rjust ,zfill

    center  #center() 方法返回一个指定的宽度 width 居中的字符串,如果width小于字符串宽度,直接返回字符串,不会截断,fillchar 为填充的字符,默认为空格
    x = 'qw'  
    res = x.center(50,'*')   
    ljust   #左对齐,剩下用字符串填充到指定宽度
    rjust   #右对齐,剩下用字符串填充到指定宽度
    zfill   #返回指定长度的字符串,原字符串右对齐,前面填充0。
    

    expandtabs

     print("hello world ".capitalize(2))    #把字符串中的 tab 符号('	')转为空格,tab 符号('	')默认的空格数是 8
    

    captalize,swapcase,title

    capitalize    # 首字母大写
    swapcase      #大小写反转
    title        #所有单词首字母大写
    print('hello world'.capitalize)
    

    isidentifier isspace istitle

    # 用于判断字符串是否是有效的 Python 标识符,可用来判断变量名是否合法
    # 检测字符串是否只由空白字符组成,空白符包含:空格、制表符(	)、换行(
    )、回车(
    )等
    # 用于检测每个单词首字母是否大写
    

    列表

    list 转换,其实是相当于将内部循环,然后添加空列表

    • append在原列表尾部加值

      v1 = [1,2,3]
      v1.append(4)
      
    • insert 在原列表的指定索引位置插入值

    • extend 将一个列表元素添加到另一个列表

      v1 =[1,2,3]
      v2 =[4,5,6]
      v1.extend(v2)   #将v2中的值逐一加到v1中[1,2,3,4,5,6]
      
    • remove 在原列表中根据值从左到右找到第一个删除

      v1 =[1,2,1,3]
      v1.remove('1')  #[2,1,3]
      
    • pop 在列表中根据索引删除某个元素, 有返回值,默认删除列表最后一个

      v1 = [123,1232,43453]
      v2 = v1.pop(1)
      
    • clear清空原列表,reverse反转列表

      v1 = [1,2,3]
      v1.clear
      v2 =[2,3,4]
      v2.reverse
      
    • sort 排序 默认reverse = false,则从小到大

      v1= [1,3,2,4]
      v1.sort(reverse = false)  #[1,2,3,4]
      

    公共方法

    • 索引,len(),切片,步长,for,嵌套
    • 因为是可修改类型,所以可以根据索引进行删除替换

    元组

    一般可以被循环的元素才能转换成元组

    • 其本身不可被修改,但其可变的子子类可被修改

      v1 =(1,2,3,[4,5])
      v1[3][0] = 1
      
    • 元组的最后多加一个逗号,用于标识他是一个元组

      比较值 v1 = (1) 和 v2 = 1 和 v3 = (1,) 有什么区别?
      比较值 v1 = ((1),(2),(3)) 和 v2 = ((1,),(2,),(3,),) 有什么区别?
      
    • len(),切片,步长,索引,for,嵌套

        (1,) == 1,
      Out: (False,)
      
       a = (1,)
       b = 1,
       a==b
      Out: True
      #原本1, 就是一个元组: (1,)但是 (1,) == 1, 在解析的时候,变成了这样 ((1,) == 1), 于是 便有了结果 (False,)
      

    字典

    在Python3.6+字典就是有序了,之前的字典都是无序。 键值对 {key: value}

    字典的键必须不可更改,值可以是任意类型

    转换时必须要有特定的格式 满足能转换成键值对的形式

    date ={1:2,'a':2}
    data = info.keys() # 在Python2中 字典.keys()直接获取到的是列表,而Python3中返回的是高仿列表,这个高仿的列表可以被循环显示。
    data = info.values()  #在Python2中 字典.values()直接获取到的是列表,而Python3中返回的是高仿列表,这个高仿的列表可以被循环显示
    date = info.items()  ## item是一个元组 (键,值)
    for key,value in info.items():
     print(key,value) # key代表键,value代表值,将直接从元组中直接拆分出来了
    
    • 更新键值对
    info = {"age":12, "status":True}
    info.update({"age":14,"name":"ppp"}) # info中没有的键直接添加;有的键则更新值
    print(info) # 输出:{"age":14, "status":True,"name":"ppp"}
    
    • 移除键值对
    info = {"age":12, "status":True,"name":"ppp"}
    data = info.pop("age")
    print(info) # {"status":True,"name":"ppp"}
    print(data) # 12
    
    • 根据字典获取值
    info = {"age":12, "status":True,"name":"ppp"}
    data = info.get("name",None) # 根据name为键去info字典中获取对应的值,如果不存在则返回None,存在则返回值。
    print(data) # 输出:ppp   一般直接用键去获取值容易报错,所以用get
    

    len(), 通过键可以找到字典中的值,通过键也可以对字典进行添加和更新操作,如果键不存在,则会添加键值对,如果存在,则会更新键对应的值 for,可以循环键,值,及键值对

    在嵌套和对内部数据操作时要注意:元组子元素不能变不可哈希的list、dict不能做字典的键

    #   字典根据键的查找速度非常快,远远大于列表或元组通过索引查找的速度,因为字典内部是基于hash存储
    
  • 相关阅读:
    文件同步
    Renesas PPP Mode
    PYTHON 常用API ***
    Python DB
    Python VIL Realse
    C BIN加密
    Python VIL Service Bin
    Python 定期检查Build_setting的编译情况
    Python 字串处理
    IP分片(IP Fragment)
  • 原文地址:https://www.cnblogs.com/feiguoguobokeyuan/p/13301595.html
Copyright © 2011-2022 走看看