• 一、基本数据类型及常用方法


    一. 数字 int

        1. int 将字符串转换成数字

    a="123"
    print(type(a),a)
    a=int(a)
    print(type(a),a)
    
    #指定字符串进制
    a="0011"
    a=int(a,base=16)
    print(a)
    

      2. bit_length 当前数字转换为二进制数至少需要几位数

    a=11
    b = a.bit_length()
    print(b)

     二. 字符串str

    1. capitalize        首字母大写

    str='hello'
    v=str.capitalize()
    print(v)

    运行结果:
    Hello

    2. casefold       转换为小写,与lower功能相同,但比lower功能强大

    str='HeLLo'
    v=str.casefold()
    print(v)

    运行结果:
    hello

    3. center     将字符串放在中间,并用指定字符(0或1个,不指定默认空格)填充两边,使达到指定长度

    str='hello'
    v=str.center(20,"#")
    print(v)

    运行结果:
    #######hello########

     4. count     计算字符串中指定子字符串的个数,可指定其实结束位置,左闭右开

    str="buhuanfhgujk"
    v1=str.count('u')
    v2=str.count('u',0,10)
    v3=str.count('u',0,9)
    print(v1,v2,v3)

    运行结果:
    3 3 2

     5.  endswith   判断是否以指定字符串结尾,可指定判定区间,左闭右开,startswith同

    str="shueign"
    v=str.endswith('gn')
    v1=str.endswith('h',0,1)
    v2=str.endswith('h',0,2)
    print(v,v1,v2)

    运行结果:
    True False True

     6.  find  找到指定字符串的开始位置,未找到返回-1,左闭右开

             index  也是查找字符串位置,但是未找到会报错

             rfind  从右侧开始查找

    str="husjgjabugblangu"
    v=str.find('gj')
    v1=str.find('g',5,9)
    v2=str.find('g',5,10)
    print(v,v1,v2)

    运行结果:
    4 -1 9

     7. format  将一个字符串中的占位符替换为指定的值

    str='I am {name}.I am {year}'
    v=str.format(name="hao",year="20")
    print(v)
    
    str1='I am {0}.I am {1}'
    v1=str1.format("hao","20")
    print(v1)
     
    # 格式化,传入的值必须是 {"name": 'alex', "a": 19}
    test = 'i am {name}, age {a}'
     v1 = test.format(name='df',a=10)
     v2 = test.format_map({"name": 'alex', "a": 19})
    

    8.  isalnum  字符串中是否只包含 字母和数字

         isalpha   只包含字母

         isdigit   只包含数字

         isnumeric  是否只包含数字字符

    str="hue13@"
    v1=str.isalnum()
    print(v1)
    

    9.  islower   字符串是否全部是小写

         isupper  字符串是否全部是大写

         swapcase   大写转小写,小写转大写

    abc="sajgna123"
    v1=abc.islower()
    print(v1)
    
    aaa="ABV123"
    v2=aaa.isupper()
    print(v2)
    运行结果: True True

    10. isspace  是否只包含空白

    11. istitle  是否是标题化的,即每个单词的首字母都是大写

    12. join  以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串

    aaa="ABV123"
    v1='_'.join(aaa)
    print(v1)
    运行结果: A_B_V_1_2_3

    13. len 计算字符串长度

    14. ljust   使用指定字符(默认为空)左对齐填充字符串,使字符串达到指定长度

          rjust  右对齐

    aaa="sijg"
    v1=aaa.ljust(20,"*")
    print(v1)
    运行结果: sijg****************

    15.  lstrip   截掉字符串左边的空格或指定字符,并返回截取后的值(不指定参数时,默认截掉空格)

           rstrip   删除左侧的

           strip   删除两边的

    aaa="sdniga"
    v1=aaa.lstrip("s")
    print(v1,aaa)
    运行结果: dniga sdniga

     16. maketrans  创建字符映射的转换表

    aaa="abcde"
    trans=str.maketrans("abcde","12345")
    print(aaa.translate(trans),aaa)
    运行结果: 12345 abcde

     17: replace  将字符串中的字符替换为指定字符(可选择替换几次)

    aaa="sjsijg"
    v1=aaa.replace("s","L")
    print(v1)
    运行结果: LjLijg

     18. split  将字符串以指定字符分割,并删除该字符

    aaa="asdfghjk"
    v1=aaa.split("g")
    print(v1)
    运行结果: 【‘asdf’,'hjk'】

     三、列表list

    1. append  在列表末尾添加新的对象(只能加一个)

        extend   在列表末尾一次性追加另一个序列中的多个值

    li=['aaa','bbb','ccc']
    li.append('ddd')
    print(li)
    运行结果: ['aaa','bbb','ccc','ddd']
    li=['aaa','bbb','ccc']
    li.extend(['ddd','eee'])
    print(li)
    运行结果: ['aaa','bbb','ccc','ddd','eee']

    2. count  统计某个元素在列表中出现的次数

    li=['aaa','bbb','ccc','aa','aaa']
    v1=li.count('aaa')
    print(v1)
    运行结果:
    2

     3.index   找出列表中某个值索引位置(不存在的值会报错)

    li=['aaa','bbb','ccc','aa','aaa']
    v1=li.index('aaa')
    print(v1)
    运行结果: 0

     4. insert  将对象插入列表(需指定插入位置,一次只能插入一个对象)

    li=['aaa','bbb','ccc']
    li.insert(-2,'aa')
    print(li)
    运行结果: ['aaa','aa','bbb','ccc']
    #如指定位置为-1,则找到当前-1位置的字符串为‘ccc’,降‘aa’插入到它的左边

     5. pop  移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

         remove  移除列表中某个值的第一个匹配项,无返回值

          clear   清空列表

    li=['aaa','bbb','ccc','aa','aaa']
    v1=li.pop()
    print(v1,li)
    运行结果:
    aaa ['aaa','bbb','ccc','aa']
    li=['aaa','bbb','ccc','aa','aaa']
    v1=li.remove('bbb')
    print(v1,li)
    
    运行结果:
    None    ['aaa','ccc','aa','aaa']
    

     6. reverse  反向列表中元素

     7. copy  复制列表

     8.  sort  对列表中的元素进行排序

    aa=['s','a','d','123']
    aa.sort()
    print(aa)
    
    运行结果:
    ['123', 'a', 'd', 's']
    

      

     四.  元组

    1. 元组不可修改

    2. count  计算元组中指定字符的个数

    3. index  指定字符在元组中的位置

    4. 元组切片  

    aa=('aaa','bbb','bbb','sh','si','eu','ei')
    bb=aa[2:7:2]      #起始位置2,结束位置7,步长2
    print(bb)
    
    运行结果:
    ('bbb', 'si', 'ei')
    

    五.  字典 dict

    1. 字典由键值对组成

        键的类型必须是不可变的数据类型,如字符串/数字/元组

    2. 增删改查

    #增
    s={'a':'shu','b':'ueng',2:{'11':44}}
    s['c']='hu'
    print(s)
    运行结果:
    {'a': 'shu', 'b': 'ueng', 2: {'11': 44}, 'c': 'hu'}

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    bb={'c':'hh','d':'ee'}
    aa.update(bb)
    print(aa)
    运行结果:
    {'a': 'shu', 'b': 'ueng', 2: {'11': 44}, 'c': 'hh', 'd': 'ee'}

      

    #删
    s={'a':'shu','b':'ueng',2:{'11':44}}
    s.clear()
    print(s)
    s={'a':'shu','b':'ueng',2:{'11':44}}
    del s['a']
    print(s)
    

      

    #改:
    s={'a':'shu','b':'ueng',2:{'11':44}}
    s['a']='hahah'
    print(s)
    
    运行结果:
    {'a': 'hahah', 'b': 'ueng', 2: {'11': 44}}
    #查:
    aa={'a':'shu','b':'ueng',2:{'11':44}}
    b=aa.get('a')    #没有返回none
    print(b)

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    b=aa.setdefault('aa') #查找指定键的值,没有的话添加到字典中
    print(aa,b)

    运行结果:
    {'a': 'shu', 'b': 'ueng', 2: {'11': 44}, 'aa': None} None

    3.  fromkeys   以序列 (可以是列表/元组/字典)中元素做字典的键,value 为字典所有键对应的初始值(可以不指定,默认none)

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    # aa=['a','b','c']
    s=dict.fromkeys(aa,10)
    print(s)
    
    运行结果:
    {'a': 10, 'b': 10, 2: 10}
    

    4. items  以列表的形式返回字典中的键值对

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    print ("字典中的值:%s" %aa)
    for key,value in aa.items():
        print(key,value)
    
    运行结果:
    字典中的值:{'a': 'shu', 'b': 'ueng', 2: {'11': 44}}
    a shu
    b ueng
    2 {'11': 44}
    

    5. keys  以列表的形式返回字典的所有键

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    print(aa.keys())
    
    运行结果:
    dict_keys(['a', 'b', 2])
    

    6. POP 删除字典给定键 key 所对应的值,返回值为被删除的值

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    b=aa.pop('a')
    print(aa,b)
    
    运行结果:
    {'b': 'ueng', 2: {'11': 44}} shu
    

    7. popitem 随机返回并删除字典中的一对键和值

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    b=aa.popitem()
    print(aa,b)
    
    运行结果:
    {'a': 'shu', 'b': 'ueng'} (2, {'11': 44})
    

    8. values 以列表返回字典中的所有值

    aa={'a':'shu','b':'ueng',2:{'11':44}}
    print(aa.values())
    运行结果:
    dict_values(['shu', 'ueng', {'11': 44}])
    

    六、集合

    1. 集合是无序的,不可重复元素的序列

        创建集合:

              法1:basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}

              法2:a = set('abracadabra')

         a为 {'a', 'r', 'b', 'c', 'd'}

    2. 集合运算

      a-b                 # 集合a中包含而集合b中不包含的元素

            a.difference(b)                          #找到a中包含而集合b中不包含的元素

      a.difference_update(b)   #获取a-b的值并且更新给a

    a={'aaa','bbb','ccc'}
    b={'ccc','ddd','eee'}
    c=a.difference(b)
    d=a-b
    print(a,b,c,d)
    运行结果:
    {'aaa','ccc','bbb'}{'ccc','ddd','eee'}{'aaa','bbb'}{'bbb','aaa'}
    

      a | b     # 集合a或b中包含的所有元素

      a.union(b)     #集合ab的并集

      a & b   # 集合a和b中都包含了的元素

      a.intersection(b)     #取ab交集

      a.intersection_update(b)    #取ab交集,并将值更新给a

    a={'aaa','bbb','ccc'}
    b={'ccc','ddd','eee'}
    c=a.intersection(b)
    d=a&b
    print(a,b,c,d)
    
    运行结果:
    {'aaa','bbb','ccc'}{'ccc','ddd','eee'}{'ccc'}{'ccc'}

      a ^ b    # 不同时包含于a和b的元素

      a.symmetric_difference(b)   #找出a含b不含,或b含a不含的元素

           a.symmetric_difference_update(b)      #找出a含b不含,或b含a不含的元素,并更新给a

     3.  添加元素

      basket.add('aaa')

      basket.update('aaa')

    4. 删除元素

      basket.clear()        #删除全部元素

      basket.discard('banana')   #删除指定元素

         pop     #随机移除元素

      remove    #移除指定元素

      

    5.  isdisjoint 判断两个集合中是否有相同元素,有回false,没有回true

    a={'aaa','bbb'}
    b={'ccc','ddd','eee'}
    c=a.isdisjoint(b)
    print(c)

    True

    6. issubset  判断a是不是b的子集

    a={'aaa','bbb'}
    b={'bbb'}
    c=a.issubset(b)
    print(c)
    
    False

      issuperset  判断a是不是b的父集

    a={'aaa','bbb'}
    b={'bbb'}
    c=a.issuperset(b)
    print(c)
    
    True

       

     

  • 相关阅读:
    【Netty学习】 ChannelInitializer 学习
    【Netty学习】Netty 4.0.x版本和Flex 4.6配合
    Spring框架学习
    【JS教程23】jquery链式调用
    【JS教程22】jquery特殊效果
    【JS教程21】数组及操作方法
    【JS教程20】jquery动画
    【JS教程19】jquery绑定click事件
    【JS教程18】jquery样式操作
    【JS教程17】jquery选择器
  • 原文地址:https://www.cnblogs.com/haoy/p/10181997.html
Copyright © 2020-2023  润新知