Python类型——字符串

    一、单双引号字符串:在Python字符串中,单引号和双引号字符是可以互换的。

    Python会自动在任意的表达式中合并相邻的字符串常量,尽管可以简单地在它们之间增加+操作符来明确地表示这是一个合并操作。

Eg:

        >>> title = "Meaning"  'of' "Life"

        >>> title

        'MeaningofLife'

   二、 三重引号编写多行字符串模块:也称为快字符串。这份形式以三重引号开始(单引号和双引号都可以),并紧跟任意行数的文本,并且以三重引号结尾。嵌入在这个字符串文本中的单引号和双引号也会但不是必须转义——直到Python看到和这个常量开始时同样的三重引号,这个字符串才会结束

Eg:         >>> nantra = """Always look

                ... on the bright

                ... side of life."""

                >>> nantra

                'Always look\non the bright\nside of life.'           


    三、Unicode字符:Unicode字符常被称为“宽”字符串。因为每个字符也许在内存中会占用大于一个字节的空间,与一般字符串相比,Unicode字符串允许程序编码更丰富的字符集。Unicode的字符串典型地应用于支持国际化的应用(一些时候称为“il8”,为了压缩这个英文单词头尾之间的18个字母)。例如,它允许程序员在Python脚本中直接支持从欧洲到亚洲的字符集。因为这些字符集有很多字符,以至于不能够仅使用一个字节来表示,所以Unicode往往就是用来处理这些形式的文本的。

    在Python中,可以在脚本中通过在开头的引号前增加字母U(大写或小写)编写一个Unicode字符串:

Eg:

            >>> s = U'spam'

            >>> s

            'spam'

    因为Unicode是用来处理多字节字符的,所以能够使用特殊的“\u”和“\U”转义字符去编码大于8bit的二进制值:

 Eg:           >>> u'ab\x20cd'

                    'ab cd'

                    >>> u'ab\u0020cd'

                    'ab cd'

                    >>> u'ab\U00000020cd'

                    'ab cd'

    四、字符串的基本操作

   1、 字符串可以通过“+”操作符进行合并,通过“*”操作符进行重复。

 Eg:            >>> 'abc' + 'def'

                    'abcdef'

                    >>> 'Ni!' * 4

                    'Ni!Ni!Ni!Ni!'

    2、索引和分片

    因为将字符串定义为字符的有序集合,所以我们能够通过其位置获得他们的元素。在Python中,字符串中的字符是通过索引(通过字符串之后的方括号中提供所需要的元素数字的偏移量)提取的。Python的偏移量是从0开始的,并比字符串的长度小1。与C语言不同的是,Python还支持在字符串中使用负偏移量的方法从序列中获取元素。一个负偏移与这个字符型的长度相加后得到这个字符串的正的偏移值。可以将负偏移认作是从结束处反向计数,负偏移量是从-1开始计数。

Eg:             >>> S = 'spam'

                    >>> S[0], S[-2]

                    ('s', 'a')


总结:

    · 索引(s[i])获取特定偏移的元素:

    ——第一个元素的偏移为0;

    ——负偏移索引意味着从最后或右边反向进行计数。

    · 分片(s[i:j])提取对应的部分作为一个序列:

    ——上边界(右边)并不包含在内;

    ——分片的边界默认为0和序列的长度,如果没有给出的话;

    ——s[1:3]获取了从偏移为1的元素,直到但不包括偏移为3的元素;

    ——s[:-1]获取了从偏移为0直到但是不包括最后一个元素。

  Eg:           >>> s[1:3]

                    'pa'

                    >>> s[:-1]

                    'spa'


    扩展分片:在Python2.3中,分片表达式增加了一个可选的第三个索引,用作步进(有时称为是stride)。步进添加进每个提取元素的索引中。完整形式的分片现在变成了X[I:J:K],这表示“索引X对象中的元素,从偏移为I开始知道偏移为J-1,每个K元素索引一次”。

 Eg:            >>> d = 'doajgijaipjoaeoi'

                    >>> d[1:15:2]

                    'ojiapoe'



            

你可能感兴趣的:(Python类型——字符串)