一、声明

  0-多个字符组成的有序序列;

二、特点

  1、 字符串是一个不可变的数据类型   

  2、字符串是有序的

三、索引

  下标:'abcde'

    1、从左到右, 0, 1,2, ...
    2、从右到左, 索引值最后一个字符的-1

    倒数第二个字符的索引值-2....

  切片:
    字符串[start : stop : step]

    * start: 能取到
    * stop: 取不到
       顾头不顾尾
    * start: 默认从开头开始
    * stop: 默认是截取到末尾

    1. step为正
      1、 从左到右切, 正序
      2、start < stop

    2、 step为负
      1、依然遵循顾头不顾尾的规则

      2、从右到左切
    3、start > stop

      s = 'abcde'

      'abc' --> s[0:3:]

      'cba' --> s[2::-1]

  长度

    len(字符串) # python内置函数  

  解包
    x, y, z = 'abc'   # x = 'a' z = 'c'

四、字符串的常用方法

  1. 查找

    find() 查找, 从左开始返回指定字符在字符串中的索引值
    rfind() 查找, 从右开始返回指定字符在字符串中的索引值
    以上两个,如果找不到的时候,返回-1

    index() 查找, 从左开始返回指定字符在字符串中的索引值
    rindex() 查找, 从右开始返回指定字符在字符串中的索引值
    以上两个, 如果找不到的时候, 报错

    count() 计算指定字符在字符串中出现的次数

  2. 拆分
    splitlines() 按照换行符进行拆分,将拆分后的每行字符串放置在一个列表中
    split(sep, maxsplit)
      功能: 按照某个字符串进行切割,不保留切割的部分
      sep: 按照谁切割, 切割的规则   

 s = 'i love python'
s.split(' ') ---> ['i', 'love', 'pyhton']

    maxsplit : 切割的次数; 默认切割所有;

    partition(sep)
      功能: 与split一样, 只不过,保留切割的部分

  3、替换
    replace(old, new, count)
    old : 被替换的字符串
    new : 替换为的字符串
    count : 替换的次数, 默认全部替换

    translate()
      功能: 按照对照关系进行替换
      参数: 对照关系
        str.maketrans(被替换的字符串, 替换为的字符串)

      其中: 被替换的 和 替换为的 每个字符一一对应

        m = str.maketrans('美丽', '漂亮')

      '雪真美丽'.translate(m) --> 雪真漂亮'

  4、修饰
    center 居中
    ljust 左对齐
    rjust 右对齐
    zfill 使用0从左开始填充
    strip 去除首尾空格,也可以去除指定的字符
    lstrip 去除左边空格,也可以去除指定字符
    rstrip 去除右边空格, ......

  5、format

    (1)通过位置参数填充内容
    (2)通过关键字参数填充内容
    (3) 填充与格式化
      {:^8} 居中长度为8,用空格填充
      {:*<10} 居左长度为10,用*填充

    (4) 精度与进制
      {:.3f} 保留小数点后3位
      {:o} 将十进制数转换为八进制数
      {:x} 将十进制数转换为十六进制数
      {:b} 将十进制数转换为二进制数  

  6、字符串的格式化

    '%d...%f...%s' % (整形数据, float数据, 字符串数据)

  7、字符串变形
    upper 变大写
    lower 变小写
    swapcase 大小写互换
    title 每个单词的首字符大写
    capitialize 整个字符串的首字符大写
    expandtabs 把\t ---> 空格, 共8个字符

  8、 字符串的判断
    isalnum 是否全部是字母或数字组成
    isdigit ..........数字.....
    isalpha ..........字母.....
    isupper 字母部分是否都是大写
    islower 字母部分是否都是小写
    istitle 是否每个单词首字母大写
    isspace 是否全部由空白字符组成
    startswith 是否以....开头
    endswith 是否以....结尾

  9、python内置的两个函数
    dir() 查看对象的所有方法
    help() 查看函数的使用方法,说明文档

三、转义字符

  改变原有字符的含义:符号: \ , 如、\n, \t, \b, \w

  原始字符串: r' ' 使字符串保持每个字符原有的含义

【python基础】字符串方法汇总的更多相关文章

  1. python拼接字符串方法汇总

    python拼接字符串一般有以下几种方法: 1.直接通过(+)操作符拼接 s = 'Hello'+' '+'World'+'!' print(s) 输出结果:Hello World! 这种方式最常用. ...

  2. python基础---字符串常用方法汇总

    s3 = '123's2 = ' 's1 = 'This Is \t Cash's='abcdefghijklmnopqrstuvwxyz's4 = "0000000this is stri ...

  3. python基础——字符串和编码

    python基础——字符串和编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用 ...

  4. laravel获取当前的url以及当前的基础域名方法汇总

    原文地址:https://phpartisan.cn/news/58.html 来源于:laravel获取当前的url以及当前的基础域名方法汇总 - Laravel学习网 laravel中我们常常需要 ...

  5. Python 基础-> 字符串,数字,变量

    Python 基础:字符串,数字,变量 1. 字符串 (信息的一种表达方式) a. 使用引号创建字符串 b. 单引号,双引号,三引号: ', ", ''', ""&quo ...

  6. Python基础-字符串格式化_百分号方式_format方式

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  7. Python基础——字符串

    Python版本:3.6.2  操作系统:Windows  作者:SmallWZQ 在Python中,字符串也是一种数据类型.相比其它数据类型,字符串算是比较复杂的.为何呢?因为字符串不仅包含英文字母 ...

  8. python learning 字符串方法

    一.重点掌握的6种字符串方法: 1.join命令 功能:用于合并,将字符串中的每一个元素按照指定分隔符进行拼接 程序举例: seq = ['1','2','3','4'] sep = '+' v = ...

  9. python基础-字符串(6)

    一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...

  10. Python基础04_str_方法

    所有的练习都是用的python3 ,还没试过python2 ############## 必须要会的7个基本方法 ############## join  split find strip upper ...

随机推荐

  1. Autofac实现AOP拦截

    本文主要是详解一下在ASP.NET Core中,采用替换后的Autofac来实现AOP拦截. Aspect Oriented Programming(AOP),面向切面编程,是一个比较热门的话题.AO ...

  2. Java并发编程之程序运行堆栈分析

    Java程序运行的堆栈分析 1.JVM运行时数据区 JVM通过加载class文件的数据来执行程序.JVM在运行时会划分不同的区域以存放数据.如下图所示: 线程共享部分:所有线程都能访问这块内存的数据, ...

  3. python-Web-项目-svn和git

    SVN概念: >>>本地服务端 >>>服务端: 安装:windows傻瓜式安装 使用: 1 在弹出的右键菜单中选择Create New Repository或者新建 ...

  4. jvm的学习笔记:二、类的初始化,代码实战(2)

    常量在编译阶段,会存在调用这个常量的方法的所在的类的常量池当中 System.out.println(MyParent2.str); 输出: hello parent2 依据:在MyTest2类调用M ...

  5. linux系统查看当前正在运行的服务

    --查看当前服务器所有服务 service --status-all -- 查看当前所有正在运行的服务 service --status-all | grep running --查看指定服务运行状态 ...

  6. KVM虚拟化网络管理(4)

    一.Linux Bridge网桥管理 网络虚拟化是虚拟化技术中最复杂的部分,也是非常重要的资源.第一节中我们创建了一个名为br0的linux-bridge网桥,如果在此网桥上新建一台vm,如下图: V ...

  7. Leetcode之动态规划(DP)专题-63. 不同路径 II(Unique Paths II)

    Leetcode之动态规划(DP)专题-63. 不同路径 II(Unique Paths II) 初级题目:Leetcode之动态规划(DP)专题-62. 不同路径(Unique Paths) 一个机 ...

  8. VS附加到进程调试

    WIN+R 进入cmd命令  输入 netstat -ano | find "进程端口"      找端口 打开vs alt+d+p选择上图对应的进程

  9. PTA(Basic Level)1027.打印沙漏

    本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 ***** *** * *** ***** 所谓"沙漏形状",是指每行 ...

  10. 好的python链接

    海艳师姐博客园:  https://www.cnblogs.com/haiyan123/p/8387770.html