中国最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2

python教程

  • Python 入门教程
  • Python 基础教程

    Python 高级教程

    Python 常用资源

    Python 拓展阅读

    3. python 字符串的一般使用

    阅读 (2203)

    3. python 字符串的一般使用

    1.基本操作

    1)使用+连接

      >>> "abc"+"efg"  
      'abcefg'  
      >>> a="abc"  
      >>> b="efg"  
      >>> c=a+b  
      >>> c  
      'abcefg'  
      >>>   

    2)使用*重复

     >>> "abc"*3  
      'abcabcabc'  
      >>> "abc\n"*3  
      'abc\nabc\nabc\n'  
      >>> print("abc\n"*3)  
      abc  
      abc  
      abc  
        
      >>>   

    3)字符串不能使用+连接数字

      >>> "abc"+9  
      Traceback (most recent call last):  
        File "", line 1in   
          "abc"+9  
      TypeError: Can't convert 'int' object to str implicitly  

    4)使用for来迭代

     >>> a="abcdefg"  
      >>> for x in a:print(x)  
        
      a  
      b  
      c  
      d  
      e  
      f  
      g  
    

    5)使用in来找字符,后面我们还会说到str.find()方法,跟in非常相似

      >>> a="abcdefg"  
      >>> "h" in a  
      False  
      >>> "abc" in a  
      True  
      >>>   

    2.索引与分片

    1)索引

    字符串可以通过索引来查找想要的字符,而且索引分成正负,通过不同的查询方向来查找

      >>> a="abcdefg"  
      >>> a[0],a[1],a[5]  
      ('a''b''f')  
      >>> a[-2],a[-1],a[-5]  
      ('f''g''c')  
      >>>   

    2)分片,说白了就是提取字符串的某些部分,而且当索引使用负数则返回空

      >>> a="abcdefg"  
      >>> a[1:]  
      'bcdefg'  
      >>> a[1:3]  
      'bc'  
      >>> a[-1:3]  
      ''  
      >>>   

    我使用一张图来说明一下这个分片是怎么分的,以a[1:3]为例子

    从图上面我们比较清楚情况,对于1,他是把指针放到a的后面,从b开始数,a不算,然后后面的3,他是把指针放到d的前面,不算d

    所以返回的只有bc

    还有需要特殊说明一些例子:

    a[1:]从第二个字符开始到结束

    a[:3]从第一个字符开始到第二个字符,也就是第三个字符前

    a[:]复制所有字符

    其实还有第三个参数,步进,说白了,就是跳着选,就是要看跳几个而已

      >>> a="abcdefghijklmn"  
     >>> a[2:8:2]  
     'ceg'  
      >>> a[::3]  
      'adgjm'  
      >>>   

    a[2:8:2]代表从第三个字符开始抽取,到第八个之前也就是第七个,然后每隔2个挑一个出来

    a[::3]代表从所有字符中每隔3个挑一个出来

    如果步进是复数,则反着挑

    3.字符串转换str()与repr()

      >>> str(42)  
      '42'  
      >>> repr(43)  
      '43'  

    区别,在使用print的时候,repr多了一对单引号

      >>> print(str('aaa'),repr('aaa'))  
      aaa 'aaa'  
    

    4.修改字符串

    字符串是不可以修改的,那么怎么修改呢?

    其实过程是我们从一个字符串里面抽取某些字符,然后在加上其他的字符,形成新的字符串对象

     >>> a="abcdefghijklmn"  
      >>> id(a)  
      24338048  
      >>> b=a[1:5]+" \n this is a str"  
     >>> id(b)  
      24342896  
     >>> b  
      'bcde \n this is a str'  
      >>> print(b)  
      bcde   
      this is a str  
     >>>   


    关闭
    程序员人生