zoukankan      html  css  js  c++  java
  • 学习总结---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()

      

          

     

          

  • 相关阅读:
    python高级编程
    django笔记
    sublime ide
    python3 django mysql
    python win
    linux时区设置
    在实际应用中如何实现切圆角的功能
    display和visiblity在应用中使用哪个好
    看懂UML类图和时序图
    解决Xcode7.2真机调试出现:The account “” has no team with ID “”
  • 原文地址:https://www.cnblogs.com/aaron456-rgv/p/12199991.html
Copyright © 2011-2022 走看看