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

    python基本数据类型

    1.整型

    1.1 int

    1.2 bit_lenght

    # 当前数字的二进制位数,至少用n位表示
    r = age.bit_length()

    >>> a = 8
    >>> a.bit_length()
    4
    

    2.字符串

    1、capitalize()#第一个字母大写
    >>> name = 'my  name is zhuo'
    >>> name.capitalize()
    'My  name is zhuo'
    2、center()
    >>> print(name.center(50,'-'))
    -----------------my  name is zhuo-----------------
    3、format format_map,expandtabs,find,index,count,
    a = 'abcabc'
    print(a.count('a')) #默认在整个字符串中查找'a'出现的次数
    #>>>2
    print(a.count('a',2,6))#限定第2到第5个位置中查找
    #>>>1
    print(a.find('bca'))#find()、index() 找子字符串的索引,没有没找到,find返回-1,index会直接报错,一般用find
    #>>>1
    print(a.find('ab',2,6))##限定第2到第5个位置中查找'ab'第一次出现的索引
    print(a.index('bca'))
    
    #format(将字符串中的占位符替换为指定的值,{}是占位符)
    b = 'my name is {zhuo} do {you} know'
    print(b.format(zhuo = 'sen',you = 'he'))         
    #>>>my name is sen do he know
    
    
    4、isalnum()#判断是否纯数字或者字母,或者都有
    >>> 'name123'.isalnum()
    True
    >>> 'name..'.isalnum()
    False
    5、isalpha()#判断纯字母
    >>> 'name123'.isalpha()
    False
    >>> 'name'.isalpha()
    True
    6、isdigit#判断是否整数
    >>> 'name123'.isdigit()
    False
    >>> '123'.isdigit()
    True
    >>> '123.3'.isdigit()
    False
    7、isidentifier()#判断是不是一个合法的标识符
    >>> 'name'.isidentifier()
    True
    >>> '2name'.isidentifier()
    False
    8、isnumeric()#判断是不是整数
    >>> '123'.isnumeric()
    True
    >>> '12.3'.isnumeric()
    False
    9、isspace#是否纯空格
    >>> ' '.isspace()
    True
    >>> '    '.isspace()
    True
    >>> 's    '.isspace()
    False
    10、istitle#是否title(每个单词首字母大写)
    >>> 'My Name Is Zhuo'.istitle()
    True
    >>> 'my Name Is Zhuo'.istitle()
    False
    11、isprintable()#是否可以打印(字符串都可以打印,tty drive文件不可大打印)
    12、isupper()#是否大写
    13、print('+'.join(['1','2','3']))#拼接
    >>> print('+'.join(['1','2','3','4']))
    1+2+3+4
    >>> print('-'.join(['1','2','3','4']))
    1-2-3-4
    >>> print('*'.join(['1','2','3','4']))
    1*2*3*4
    14、print(name.ljust(50,'*'))#保证有50个字符,少的用*在后面补上
    15、print(name.rjust(50,'*'))#保证有50个字符,少的用*在前面补上
    16、lower()#转换为小写
    17、upper()#转换为大写
    18、print('
    zhuo'.lstrip())#去掉左边的空格和回车
    19、print('
    zhuo'.rstrip())#去掉右边的空格和回车
    20、print('
    zhuo'.strip())#去掉两边的空格和回车
    21、replace()#替换
    22、rfind('x')#找到最右边的x的角标(index)
    23、print('my name is zhuo'.split())#默认带空格的换成列表,有把列表换成字符串的方法吗?
    >>>['my', 'name', 'is', 'zhuo']
    24、swapcase()#把大写变成小写,小写写成大写
    25、title()#变成标题(每个首字母变成大写)
    >>> 'my name is zhuo'.title()
    'My Name Is Zhuo'
    26、startswith('a'#判断是否以 a 开头
    27、endswith('b')#判断是否以b结尾
    28、'name'.split('a')#在a处左右分割,变成两个列表。['n','ame']


    
    
    
     
     

    3.列表

    names = ["zhangsan","lisi","wangwu","zhaoliu","laoqi"]
    print(names)
    #print(names[-3:-1])#切片
    #print(names[-2:])
    1,append、insert添加元素
    names.append('zhoushi')#插入列表到最后
    names.insert(0,'11')#插入到指定位置
    2,remove、del、pop删除元素
    names.remove('22')#删除元素
    del names[0]#删除元素
    names.pop()#默认删除最后一个元素
    names.pop(1)#删除指定位置的元素
    3,修改元素
    names[0] = "22" #修改元素
    print(names.count('lisi'))#计算列表中某个元素的数量
    print(names.index('lisi'))#打印'list'的位角标
    4,反转列表 reverse (将原列表元素反转,并不是新生成一个反列表)
    print(names)
    names.reverse()
    print("rever",names)
    5,copy(浅copy,不独立文件)
    names = ["zhangsan","lisi",['zhuo','sen'],"wangwu","zhaoliu","laoqi"]
    names2 = names.copy()#把names复制给names2,两个列表的第一层是独立的,其中的列表元素是共用的内存地址
    names[2][0] = ['z']#names和names2都会变化
    names[1] = 'LISI'#只有names会变

    补充:三种浅copy的方法
    import copy
    person = ['name',['a',100]]
    p1 = copy.copy(person)
    p2 = person[:]
    p3 = list(person)
    
    
    6,深copy:deepcopy(不要瞎用)
    import copy
    names = ["zhangsan","lisi",['zhuo','sen'],"wangwu","zhaoliu","laoqi"]
    names2 = copy.deepcopy(names)#深copy,两个完全独立的列表
    names[1] = 'LISI'
    names[2][0] = 'z'
    print(names)
    print(names2)
    
    3.2切片
    >>> a = [1,2,3,4,5,6,7,8,9]
    >>> a[0:9]
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> a[:]
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> a[-8:-1]
    [2, 3, 4, 5, 6, 7, 8]
    >>> a[::-1]
    [9, 8, 7, 6, 5, 4, 3, 2, 1]

    4.元组

    5.字典

    info = {
        'stu1101':'zhuo',
        'stu1102': 'sen',
        'stu1103': 'bin',
    }
    info['stu1101'] = ''#修改
    info['stu1104'] = 'wu'#新增
    info.pop('stu1104')#标准删除姿势
    del info['stu1101']#换个姿势删除
    print(info.get('stu1103'))#查询、获取元素
    print('stu1103' in info)#判断info中是否有‘stu1103’
    print(info.values())#打印所有的values
    b = {'ha':'hei',}
    info.update(b)#把b的字典元素更新到info,有重复的key直接覆盖,没有的话就新增
    dict.fromkeys([6,7,8],'test')
    >>> dict.fromkeys([6,7,8],'test')#创建一个初始化字典
    {6: 'test', 7: 'test', 8: 'test'}
  • 相关阅读:
    【文智背后的奥秘】系列篇——基于CRF的人名识别
    【文智背后的奥秘】系列篇——自动文本分类
    浅析HTTPS与SSL原理
    memcached与redis实现的对比
    谈谈后台服务的灰度发布与监控
    Redis单机主从高可用性优化
    ./configure、make、make install
    qtchooser
    Linux上好用的工具集合
    eclipse使用javaFX写一个HelloWorkld
  • 原文地址:https://www.cnblogs.com/zhuomou/p/8444740.html
Copyright © 2011-2022 走看看