• python中数据类型


    一:什么是数据?

      x=10,10是我们要存储的数据

    2 为何数据要分不同的类型

      数据是用来表示状态的,不同的状态就应该用不同的类型的数据去表示

    3 数据类型

      数字

      字符串

      列表

      元组

      字典

      集合

    二:数字int

    #bit_length() 当十进制用二进制表示时,最少使用的位数
    v = 11
    data = v.bit_length()
    print(data)

    三:布尔值bool

    布尔值就两种:True,False。就是反应条件的正确与否。

    真   1   True。

    假   0   False。

    四:字符串str

    (一).字符串的索引

    索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。

    a = 'hjkfskjhfsdfbjs'
    print(a[1])
    print(a[3])
    print(a[5])
    print(a[7])

    (二).字符串的切片

    切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串

    a = 'ABCDEFGHIJK'
    print(a[0:3])
    print(a[2:5])
    print(a[0:]) #默认到最后 print(a[:])
    print(a[0:-1]) #-1就是最后一个
    print(a[0:5:2]) #加步长 默认步长打印所有 -2为跳1
    print(a[5:0:-2]) #反向加步长 由F开始向前打印 A变为尾。本着顾头不顾尾的原则 所以不会打印A

    (三).字符串常用方法

    #captalize(首字母大写),swapcase(大小写反转),title(每个单词的首字母大写) #upper 全部大写 #lower 全部小写 #len
    s = 'lidongxu yanggang liuyi liangliang'
    s1 = s.capitalize()
    print(s1.capitalize()) #每句字符串首字母大写
    print(s1.swapcase()) #大小写翻转 PS:反转所有字母
    print(s1.title()) #每个单词的首字母大写 PS:特殊字符以及数字
    
    # center() 内同居中,总长度,空白处填充
    s = '欢迎'
    s1 = s.center(20,"X")
    print(s1)
    
    #count()  数字符串中的元素出现的个数。
    s = 'lidongxu yanggang liuyi liangliang'
    s1 = s.count("a",0,4) # 可切片
    print(s1)
    
    
    
    s = 'abcdefg'
    
     s2 = s.upper()#全部都是大写
        s2.2 = s.lower()#全是小写
        print(s2)
    
    #求字符串长度
    s = '132a4b5c'
    data = len(s)
    print(data)
    
    
    
    # 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
    a2 = "hqw	"
    #	前面的补全
    ret4 = a2.expandtabs()
    print(ret4)
    输出:hqw    
         如果	放在hqw前面 则会输出        hqw 八个空格在前面。
    
     
    
    #endswith 判断是否以...结尾
    s = "dkfjdkfasf54"
    s1 = s.endswith('jdk',3,6)  # 顾头不顾腚 可切片!!!!
    print(s1)  # 返回的是布尔值
    
    
    #startswith 判断是否以...开头
    s = "dkfjdkfasf54"
    s1 = s.startswith("kfj",1,4)
    print(s1)
    
    #寻找字符串中的元素是否存在
    s = "dkfjdkfasf54"
    s1 = s.find("fjdk",1,6)
    print(s1)  # 返回的找到的元素的索引,如果找不到返回-1 可切片!!!
    
    # 返回的找到的元素的索引,找不到报错。 可切片!!!
    s = "dkfjdkfasf54"
    s1 = s.index("f",2,7)
    print(s1) # 返回的找到的元素的索引,找不到报错。 可切片!!!
    
    
    #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。
    # ret9 = 'title。Tilte。atre'.split('t')
    # print(ret9)
    ret91 = 'title。Tilte。atre。li。zhang。wu'.rsplit('',2)
    ret92 = 'title。Tilte。atre。li。zhang,wu'.rsplit(',',1)
    ret93 = 'title,Tilte,atre,li,zhang,wu'.split(',')
    print(ret91) #输出结果:['title。Tilte。atre。li', 'zhang', 'wu']
    print(ret92) #输出结果:['title。Tilte。atre。li。zhang', 'wu']
    print(ret93) #输出结果:['title', 'Tilte', 'atre', 'li', 'zhang', 'wu']
    
    
    #format的三种玩法 格式化输出
    msg= '我叫{},今年{}岁。喜欢{}'.format('小明',20,'钓鱼,')
    msg = '{0} {0} {0}'.format('egon',18,'male')
    msg = '{name} {age} {sex}'.format(sex='male',name='egon',age=18)
    print(msg)
    
    #strip 替换某一个
    name='**egon**'
    print(name.strip('*')) #替换两边
    print(name.lstrip('*')) #替换前面
    print(name.rstrip('*')) #替换后面
    
    
    
    #replace 取代(自我,旧的,新的,数=无)
    name='alex say :i have one tesla,my name is alex'
    print(name.replace('alex','SB',1))
    PS:输出结果:SB say :i have one tesla,my name is alex
    如果将数字修改成2 那么最后面的alex也会被替换成SB
    
    #is系列
    name='jinxin123'
    print(name.isalnum()) #字符串由字母或数字组成
    print(name.isalpha()) #字符串只由字母组成
    print(name.isdigit()) #字符串只由数字组成
  • 相关阅读:
    今日进度
    今日进度
    今日进度
    今日进度
    今日进度
    每周总结
    今日进度
    python设置环境变量
    Python Property属性【python风格】
    学习-robot【字符串汇总】
  • 原文地址:https://www.cnblogs.com/zhouxinyu/p/8509698.html
Copyright © 2020-2023  润新知