---恢复内容开始---

一、字符串的索引与切片

1.索引

  s = 'ASDFGHJKL'

  有序序列,索引--index:从0开始

  s1 = s[0],取出单个元素:A;  s1是个全新的字符串和原字符串无关

2.切片

  #想取ASDF:

  s2 = s[0:4]    规律:顾头不顾腚

  #想取L:

  s3 = s[-1]    

  #想全取

  s4 = s[:] or s[0:]

  s5 = s[0:-1],最后一位取不到

3.跳着取,加步长

  s = 'ABCDLSESRF'

  s6 = s[0:5:2]    取:ACL

4.反着取

  s7 = s[4:0:-1]    取:LDCB

  s8 = s[3::-1]    取:DCBA

  s9 = s[3::-2]    取:DB

  s10 = s[-1::-1] or s =[::-1]   取反

二、字符串常用操作方法

  s = 'alexWUsir'

1.首字母大写capitalize()

  s1 = s.capitalize()

2.全部变成大写upper(),全部小写lower()

  s2 = s.upper()

  s21 = s.lower()  eg:需求--验证码不区分大小写,如何判断输入是否正确

3.大小写翻转swapcase()

  s3 = s.swapcase()

4.隔开的单词首字母大写(以空格或特殊字符,数字隔开即可) title()

  s = alex egon wusir

  s4 = s.title()

5.居中,添加总宽度,填充物; center()

  s = 'alexWUsir'

  s5 = s.center(20,' ')

6.8位一隔开,没满的补充,expandtabs()

  s = 'alex\tsir'

  s6 = s.expandtabs()

#公共方法

len() ---求长度

7.判断字符串以什么为开头startwith(),  镜像方法endwith(),返回True/False

  s = 'alexWUsir'

  s7 = s.startwith('alex')    #True

  s71 = s.startwith('e',2,5)

8.通过元素查找索引,找不到返回-1 find()

  s = 'alexWUsir'

  s8 = s.find('W')  返回索引:4  多个元素,以第一个元素索引为准

  s8 = s.index('A')

9.通过元素查找索引,找不到报错 index()

10.默认删除字符串前后空格,strip()

  不止是空格,可修改默认值。 %*

  变种:rstrip(),lstrip()  删除左侧右侧元素

11.统计,count()

  s = 'alexWUsir'

  s9 = s.count('al')   # 1 

12.拆分,分割,split() 成列表    字符串转列表

  s = 'alex WUsir taibai'

  l = s.split()  #默认空格  分割成列表

  s = 'alex:WUsir:taibai'

  l = s.split(':') 

  分割符会消失(空格,:,其他你选择的分割符)

13.格式化输出,format() 三种玩法

  s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('john','18','ball','john')                  #一一对应

  s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format('john','18','ball')                  #索引对应

  s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(age=18,name='john',hobby='ball')  #键值对

14.替换--replace()  old new count

  s = "来看街坊另见发挥街坊奶记得"

  s1 =s.replace("街坊","老王")  默认全部替换

15.is系列

  name='taibai123'
  print(name.isalnum()) #字符串由字母或数字组成
  print(name.isalpha()) #字符串只由字母组成
  print(name.isdecimal()) #字符串只由十进制组成 三、for循环
有限循环,可迭代对象
s = 'sdasfsfr'
for i in s:
  print(i)

 

python字符串的索引切片和常用操作方法,for循环的更多相关文章

  1. 003_python的str切片,str常用操作方法,for循环,集合,深浅copy

    基础数据类型 基础数据类型,有7种类型,存在即合理. 1.int 整数 主要是做运算的 .比如加减乘除,幂,取余  + - * / ** %... 2.bool布尔值 判断真假以及作为条件变量 3.s ...

  2. Python | 字符串拆分和拼接及常用操作

    一.字符串拆分 str = "hola ha1 ha2 china ha3 " # partition 从左侧找到第一个目标,切割成三组数据的[元组] str1 = str.par ...

  3. Python 字符串的索引

    字符串是字符的有序集合,可以通过其位置来获得具体的元素.在 python 中,字符串中的字符是通过索引来提取的,索引从 0 开始. python 可以取负值,表示从末尾提取,最后一个为 -1,倒数第二 ...

  4. python字符串 分片索引

    字符串是字符的有序集合,可以通过其位置来获得具体的元素.在python中,字符串中的字符是通过索引来提取的,索引从0开始. python可以取负值,表示从末尾提取,最后一个为-1,倒数第二个为-2,即 ...

  5. python学习(索引/切片)

    一.索引 1.索引值从左到右-->从0开始,索引值从右到左-->从-1开始 取值格式var[index] >>> name = "xinfangshuo&quo ...

  6. 『无为则无心』Python序列 — 17、Python字符串操作常用API

    目录 1.字符串的查找 @1.find()方法 @2.index()方法 @3.rfind()和rindex()方法 @4.count()方法 2.字符串的修改 @1.replace()方法 @2.s ...

  7. Python字符串(Python学习笔记02)

    字符串 Python 3 中的字符串可以使用双引号或单引号标示,如果字符串出现引号,则可以使用 \ 来去除引号标示字符串的作用. 几种字符串的表示方法: str1 = "hello" ...

  8. python之路day03--数据类型分析,转换,索引切片,str常用操作方法

    数据类型整体分析 int :用于计算bool:True False 用户判断str:少量数据的存储 list:列表 储存大量数据 上亿数据[1,2,3,'zzy',[aa]] 元组:只读列表(1,23 ...

  9. python 字符串常用操作方法

    python 字符串常用操作方法 python 字符串操作常用操作,如字符串的替换.删除.截取.赋值.连接.比较.查找.分割等 1.去除空格 str.strip():删除字符串两边的指定字符,括号的写 ...

随机推荐

  1. QueryList getData()方法中多次调用来实现递归多级采集。

    <?php require 'QueryList/vendor/autoload.php'; use QL\QueryList; //获取每个li里面的h3标签内容,和class为item的元素 ...

  2. JavaWeb学习篇之----容器Request详解

    前篇说到了Response容器对象,这篇我们就来看一下Request容器对象,之前也说过了,这个两个容器对象是相对应的,每次用户请求服务器的时候web容器就会给创建这对容器对象,他们是共存亡的,当然R ...

  3. Python ORM封装

    import sys import asyncio import logging logging.basicConfig(level=logging.INFO) # 一次使用异步 处处使用异步 imp ...

  4. NX二次开发-获取尺寸的附加文本UF_DRF_ask_appended_text

    #include <uf.h> #include <uf_drf.h> #include <uf_obj.h> #include <uf_part.h> ...

  5. NX二次开发-UFUN获取边的端点UF_MODL_ask_edge_verts

    NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_ui.h> #include <uf ...

  6. IP总结

    网络层向上只提供无连接的.尽最大努力支付的数据报服务 IP地址,32位,分为两部分,网络和主机标示 IP地址分类: A类:0开头,1-8位为网络标示 B类:10开头,1-16位为网络标示 C类:110 ...

  7. 创建 Angular 8.0 项目

    创建 Angular 8.0 项目,首先确保已经安装了 nodejs,如果没有安装,请看这篇文章安装:node.js 安装 1.新建一个空文件夹 angularproject,作为工作区 2.安装 A ...

  8. 【转】Linux(CentOS) vps安装xfce桌面+VNC

    以前我发过一篇文章利用vnc远程连接VPS桌面,其中用到的是kde桌面,后来知道xfce总体来说比kde占得内存还小些,因为xfce轻便.简单,今天因为一些原因需要在我的vps上搭建用户桌面,所以就试 ...

  9. 20140307 引用赋值、类的初始化、指针数组、数组指针、new

    引用不能被赋值http://blog.csdn.net/laixingjun/article/details/9005200 类构造函数两种初始化方法区别,哪种好:http://blog.163.co ...

  10. 史上最全Redis面试题及答案。

    花了大量时间整理了这套Redis面试题 首发50题,绝无仅有,从入门到精通 从基础,高级知识点,再到集群,运维,方案- 弄明白了这些题可以说可以成为面霸了 面试官都得折服,Redis学得怎么样,都来检 ...