Python-07-数据类型-字符串

继续介绍Python中的数据类型,字符串类型
1、字符串数据类型用途
  用来记录名字,地址,等描述型信息
2、定义
  在单引号\双引号\三引号内,由一串字符组成
3、常用的字符串操作
  (1)移除空白,有些时候,你获得的字符串是客户输入进来的,字符串的两端,会有你不想要的字符,比如空格,可以使用这个方法来去除
    strip 去掉两端的无用字符
    lstrip 去掉左侧的无用字符
    rstrip 去掉右侧的无用字符
    例如:
      a='22222asdcs222'
      b=a.strip('2')
      print(a)
      print(b)
   (2)按索引取值,按照索引值,拿到字符串中的指定字符
    a='my name is peter,I AM A student'
    print(a[0])
    print(a[2:5])
    print(a[3:])
    print(a[:-4])
    print(a[1::2])
    注意:中括号内的为取值范围,从0开始取值;取值的时候,前闭后开;再加一个冒号,表示步长,即每N个值取一个。
  (3)计算字符串长度
    a='my name is peter,I AM A student'
    print(len(a))
    len()同样可以用于计算列表,字典等数据类型
  (4)切分操作,即按照制定的分隔符将字符串分割,分割结果为列表数据类型
    a='my name is peter,I AM A student,I love A|B|C'
    print(a.split(','))  引号中可以自定义分隔符,不写默认为空格。 
    print(a.split(',',1)) 数字表示要分割几次
    print(a.rsplit(',')) rsplit表示从右边开始分割
  (5)成员运算,in和not in,判断制定的字符串是否包含在要被检查的字符串内,返回为布尔值
    a='my name is peter,I AM A student,I love A|B|C'
    b='name'
    print(b in a)
  (6)字母的大小写转换
     a='my name is peter,I AM A student,I love A|B|C'
    print(a.upper())
    print(a.lower())
  (7)判断字符串的开头与结尾,返回值为布尔值
    a='my name is peter,I AM A student,I love A|B|C'
    print(a.startswith('my'))
    print(a.endswith('D'))
  (8)替换
    a='my name is peter,I AM A student,I love A|B|C'
    print(a.replace('a','B',1)),将字符串中的'a'换成‘B’,只替换第一个,数字可以自行指定
  (9)join,作用是通过指定字符连接序列中元素后生成的新字符串
    a='' 
    b=['hello','world','!']  列表中的每一项都必须是字符串,这个操作相当于split的反操作
    print(a.join(b))
  (10)查找操作,在字符串中找某一指定字符
    a='my name is peter,I AM A student,I love A|B|C'
    print(name.find('o',1,3)) 1,3表示查找范围,可以忽略不写,找到则返回字符的索引,找不到返回-1
  (11)查看索引,index
    a='my name is peter,I AM A student,I love A|B|C'
    print(name.index('o'))  如果找不到‘o’会报错
  (12)count,计数
    a='my name is peter,I AM A student,I love A|B|C'
    print(name.count('a',1,9))
  (13)了解类操作
    <1>center,ljust,rjust,zfill,查看代码效果,你就知道这是干啥的了
      name='peter'
      print(name.center(30,'-'))
      print(name.ljust(30,'*'))
      print(name.rjust(30,'*'))
      print(name.zfill(50)) #用0填充
    <2>captalize,swapcase,title
      a='my name is peter,I AM A student,I love A|B|C'
      print(a.capitalize()) #首字母大写
      print(a.swapcase()) #大小写翻转
      print(a.title()) #每个单词的首字母大写
    <3>is 判断系列,判断数字
      num1=b'4' #bytes
      num2=u'4' #unicode,python3中无需加u就是unicode
      num3='四' #中文数字
      num4='Ⅳ'  #罗马数字
      #isdigt:bytes,unicode
        print(num1.isdigit()) #True
        print(num2.isdigit()) #True
        print(num3.isdigit()) #False
        print(num4.isdigit()) #False
  
      #isdecimal:uncicode
      #bytes类型无isdecimal方法
        print(num2.isdecimal()) #True
        print(num3.isdecimal()) #False
        print(num4.isdecimal()) #False
 
      #isnumberic:unicode,中文数字,罗马数字
      #bytes类型无isnumberic方法
        print(num2.isnumeric()) #True
        print(num3.isnumeric()) #True
        print(num4.isnumeric()) #True
  
      #三者不能判断浮点数
        num5='4.3'
        print(num5.isdigit())
        print(num5.isdecimal())
        print(num5.isnumeric())
      最常用的是isdigit,可以判断bytes和unicode类型,这也是最常见的数字应用场景
      如果要判断中文数字或罗马数字,则需要用到isnumeric
    <4>is 判断系列,判断其他
      print(name.isalnum()) #字符串由字母或数字组成
      print(name.isalpha()) #字符串只由字母组成
      print(name.isidentifier())
      print(name.islower())
      print(name.isupper())
      print(name.isspace())
      print(name.istitle())
posted @ 2020-06-15 21:38  王火锅  阅读(144)  评论(0)    收藏  举报