学习总结---Python字符串内容

前言

该文章总结了之前学习的Python字符串内容

2020-01-16

天象独行

  学习Python,首先我们需要引入一个‘对象’的概念。关于‘对象’的理解将会贯穿整个Python的学习。正所谓“万物皆对象”。如果要准确的描述Python对象是什么。我们可以从“身份”,“类型”,“值”三个维度来描述。同时这三个维度也构成了一个对象的特征。

  学习字符串内容首先我们需要了解

  1;什么是字符串?

  2;变量概念

  2;关于字符串的操作。

  0X01;什么事字符串?

    字符串(String),是由零个或多个字符组成的有限串行。一般记为s=a[1]a[2]...a[n]。

    简单说就是多个字符连接起来形成了字符串。

  0X02;变量概念

    我们都知道对象是具备实际的物理位置的,但是变量是没有这个的。所以“变量无类型,对象有类型”。我们可以理解为变量相当于一个标签,这个标签贴在内存地址上。

  0X03;字符串的操作

    字符串本身也是一个对象,当然它属于一个序列。同样属于序列概念的有列表,元组,字典

    1;连接字符串

      使用“+”来连接字符。

      比如: 

>>> a = "abc" + "sdfsd"
>>> print("a")
a
>>> print(a)
abcsdfsd
>>> 

    2;转译字符

      使用“\”符号来使一些特殊含义的字符失去特殊的含义,而仅仅代表这个字符。

    3;原始字符串

      原始字符串表示没有特殊含义的字符串。包括转译后的字符。

    4;索引和切片

      索引:类似给字符串做一个编号,从0开始编号。这个编号我们定义为索引。

      切片:通过索引一块一块的取出字符串。

>>> a = "abc" + "sdfsd"
>>> print("a")
a
>>> print(a)
abcsdfsd
>>> print(a[0:3])
abc
>>> 

    5;序列基本操作

      之前我们已经说过字符串也是属于序列的一种,所以字符串也是有一样的基本操作:

      5.1;len() 返回序列长度

>>> a = "abc" + "sdfsd"
>>> print("a")
a
>>> print(a)
abcsdfsd
>>> print(a[0:3])
abc
>>> len(a)
8
>>> 

      5.2;“+” 连接两个序列

      5.3;“*” 重复序列元素,字符串中的“乘法”含义是重复那个字符串

>>> print('-'* 20)
--------------------
>>> 

      5.4;“in” 判断元素是否存在于序列中,存在返回True,不存在返回False

>>> a = 'qazwsxedcrfv'
>>> 'a' in a
True
>>> 'o' in a
False
>>> 

      5.5;max(): 返回最大值,min():返回最小值

        注意:在一个字符串中,每个字符在计算机内都是有编码的,也就是对应着一个数字,min()和max()就是根据这些数字获得最小值和最大值

>>> a = 'qazwsxedcrfv'
>>> 'a' in a
True
>>> 'o' in a
False
>>> max(a)
'z'
>>> min(a)
'a'
>>> 

      5.6;cmp(str1,str2):比较两个序列值是否相同。(Python2.7当中存在,Python3不存在该函数)

        注意:在字符串的比较中,两个字符串的第一个字符先比较,如果相等,就比较下一个,如果不相等,就返回结果。如果直到最后还相等,就返回0。位数不够时,按照“没有”处理(注意,“没有”不是0,0 在ASCII中对应的是NUL),位数多的那个大。ad中的a先和后面的c进行比较,显然a小于c,于是返回结果-1。但进行下面的比较,是最容易让人迷茫的。

>>> a = 'qwertyu'
>>> b = 'asdfgh'
>>> cmp(a,b)
1
>>> 

      Python3当中替代cmp的,使用模块operator模块

      lt(a,b) 相当于 a<b     从第一个数字或字母(ASCII)比大小 

      le(a,b)相当于a<=b

      eq(a,b)相当于a==b     字母完全一样,返回True,

      ne(a,b)相当于a!=b

      gt(a,b)相当于a>b

      ge(a,b)相当于 a>=b

>>> b = 'qwertyu'
>>> c = 'asdfghjk'
>>> import operator
>>> operator.le(b,c)
False
>>> 

    6;常见的字符串方法

      6.1;split() 将字符串根据某个分割符进行分割

      6.2;strip() 去掉字符串的左右空格

      6.3;lstrip() 去掉字符串的左边的空格

      6.4;rstrip() 去掉字符串的右边的空格

      6.5;S.upper() , S.lower(), S.capitalize(),S.isupper(),S.islower(),S.istitle()

  

      

 

 

      

posted @ 2020-01-16 14:26  天象独行  阅读(320)  评论(0编辑  收藏  举报