精华内容
下载资源
问答
  • 2020-11-29 15:37:08

    对于初级程序员而言,算法和数据结构就是梦魇。幸运的是,Python提供各种数据类型功能,内置函数,以及内置数据结构。尤其对于初级编程而言,这些几乎是万能的。我们先来看一个简单的反转字符串的例子:

    上图是一段Python代码,它的功能是,接收任意长的字符串(第7行),将其反转(第8行),然后输出结果(第10-11行)。一共4行,短小精悍。运行程序,把dog(狗)变成了god(神):

    详细分析一下代码第8行红色横线标注的部分是如何反转字符串的。在此,先给大家介绍两个概念--字符串索引和切割。

    在Python中,没有单独的字符串类型,一个字符就是一个简单的长度为1的字符串,字符串的第一个字符索引为 0 。索引可以是负数,将导致从右边开始计算,最右边的字符索引为-1。字符串用单引号或双引号表示。因此,dog是一个长度为3的字符串,第一个字母d的索引为0或者-3,第三个字母g的索引为2或者-1。我们输出string[0]就会得到d,输出string[-1]就会得到g:

    索引用于获得单个字符,切片让你获得一个子字符串。切片用方括号[ ]和冒号:表示。我们输出string[0:2]就会得到子字符串do。注意,方括号[ ]中的索引区间是一个左闭右开的集合,包含起始字符(对应索引0),不包含末尾字符(对应索引2)。同大多数方法一样,切片的索引也有默认值。省略的第一个索引默认为零,即从字符索引0开始。省略的第二个索引默认到字符索引-1为止,注意,包括字符索引-1。同时省略第一个和第二个索引,意味着从字符串第一位到最后一位,等于将原字符串从头到尾原封不动的复制一遍:

    特别要介绍,省略的第三个参数表示步长,默认为1,数值可正可负,即按照多少个字符长度间隔着切割。图五是一些例子,第19行即是反转字符串。

    现在大家已经明白文章一开始的Python代码是如何反转字符串的,我们再来看看完成同样的任务,C++需要写多少行代码:

    是不是很惊愕?通过这个例子,大家已经对Python的 “简单,优雅”有了初步的了解。除了诸如字符串切片这样的功能,Python还提供很多内置数据结构,比如列表,字典,集合。这些数据结构也几乎是万能的。其实,切片也是列表里常用的功能之一。我们下一节将为大家介绍Python的内置数据结构。

    更多相关内容
  • Python字符串切片使用

    千次阅读 2022-03-15 11:43:24
    字符串切片主要受步长值的影响,所以本文重点介绍了步长值对字符串切片的变化。 字符串切片的步长值默认是正数1. 一)步长值为正数: 1、start为空默认为负无穷,end为空默认为正无穷。巧记为[负数:正:正]。 2...

    字符串切片主要受步长值的影响,所以本文重点介绍了步长值对字符串切片的变化。

    字符串切片的步长值默认是正数1.

    一)步长值为正数:

    1、start为空默认为负无穷,end为空默认为正无穷。巧记为[负数:正:正]。

    2、对应的元素start>end时,字符串切片结果为空。

    3、取元素的顺序是从左向右。

    二)步长值为负数时:

    1、start为空默认为正无穷,end为空默认为负无穷。巧记为[正:负:负]。

    2、对应的元素start<end时,字符串切片结果为空。

    3、取元素的顺序是从右向左。


    三)案例:

    string = '0123456789'
    # 步长值为正,start为空默认为负无穷,end为空默认为正无穷 [负数:正:正]  start>end为空 从左向右取元素
    # 步长值为负,start为空默认为正无穷,end为空默认为负无穷 [正:负:负]    start<end为空 从右向左取元素
    print(f"string[3:]:{string[3:]}")  # [3,正无穷) 3456789
    print(f"string[4:2]:{string[4:2]}")  # [4,2)  步长值为正,start>end时,结果为空
    print(f"string[3::-1]:{string[3::-1]}")  # [3,负无穷) 3210
    
    print(f"string[:-5]:{string[:-5]}")  # [正无穷,-5对应的元素) 01234
    print(f"string[-10:-5:-1]:{string[-10:-5:-1]}")  # 步长值为负, start<end为空
    print(f"string[:-5:-1]:{string[:-5:-1]}")  # [正无穷到-5对应的元素)  9876
    
    print(f"string[::-1]:{string[::-1]}")  # 字符串反转 9876543210
    print(f"string[::-2]:{string[::-2]}")  # 步长为2,从右向左取元素 97531

    展开全文
  • 字符串切片和下标一样重要,要认真学习。在Python中不仅字符串支持切片操作,后面即将学习的列表、元组同样支持切片操作。 抛出问题: str1 = 'python' # 得到整个字符串数据 print(str1) # 下标得到的是下标...

    切片含义:切片是指对操作的对象截取其中一部分的操作。

    字符串切片和下标一样重要,要认真学习。在Python中不仅字符串支持切片操作,后面即将学习的列表、元组同样支持切片操作。

    抛出问题:

    str1 = 'python'
    # 得到整个字符串数据
    print(str1)
    
    # 下标得到的是下标为某个数字的数据
    print(str1[3])
    
    # 如果想得到 thon  这4个数据怎么办? -----》 用到字符串切片知识

    一、语法:

    序列名[开始位置下:结束位置下标:步长]

    注意:

    1. 不包含结束位置下标对应的数据[左闭右开),正负整数均可
    2. 步长是选区间隔,正负整数均可,默认步长为1

    二、代码体验

    不同情况下操作切片:

    # 语法: 序列名[开始位置:结束位置:步长]
    str1 = '0123456789'
    print(str1[2:5:1])  # 结果:234
    # 从下标2开始对应数字是2,到下标是5结束对应数字是5,等得到2345,但是左闭右开的,5这个数字去不到,,最后得到结果是234
    
    print(str1[2:5:2])  # 结果:24
    # 从下标2开始对应数字是2,到下标是5结束对应数字是5,在这基础之上步长间隔是2,那就是2开始位置的数据是要的加上2,选取出来的就是4,又不包含结束位置所以5取不到最后结果是24
    
    print(str1[2:5])  # 结果:234   步长不写,步长默认为1
    print(str1[:5])  # 结果:01234   开始位置不写,默认从0开始选取
    print(str1[2:])  # 结果:23456789   结束位置不写,表示选取到最后
    print(str1[:])  # 结果:0123456789   如果不写开始和结束,表示选取所有
    
    # 负数测试
    print(str1[::-1])  # 结果:9876543210   如果步长为负数,表示倒序选取
    print(str1[-4:-1:])  # 结果:678 ----下标-1表示最后一个数据,依次向前类推
    
    #  终极测试
    print(str1[-4:-1:1])  # 结果:678
    print(str1[-4:-1:-1])  # 不能选取出数据:从-4开始达到-1结束,选取方向为从左到右,但是步长-1选取方向为从右向左
    #  总结: 如果选取方向(下标开始到结束的方向)和 步长的方向冲突,则无法选取数据
    
    # 修改一下就可以选取出
    print(str1[-1:-4:-1])  #  结果 987
    # 开始位置-1选取到的数字是9,结束位置-4从数字9开始向左数,第-4个数字是6但不包含6,所以结果为987,方向为从右向左;而步长方向是从右向左,方向一致所以可以取到数据

    执行结果如下图:

     

     

    切片重点学习知识点是切片的语法以及以上对对切片做测试的代码,里面很多知识点希望大家认真理解多情况下切片操作。python基础教程从这里开始可能会稍微加大难度了,所以大家要更加的努力才行。

    展开全文
  • ## **Python 字符串切片使用详解**

    Python 字符串切片的使用详解

    我是一个爱Python的软件测试工程师,今天为大家详解一下Python语言中 字符串的切片 功能含义及使用,以下是干货,如果没看懂欢迎留言技术交流
    

    【切片】就是从字符串里复制一段指定的内容,生成一个新的字符串

    m='abcdefghijklmnopqrstuvwxyz'
    print(m[5]) #m[index] ==>获取指定下标上的数据`在这里插入代码片`
    

    “”"
    #切片的语法 m[start🔚step] 正数从左往右 人类正常习惯,负数相反方向
    【start】字符串复制指定内容的开始值(为闭区间包含start的开始值)
    正数(代表从左往右数,从0开始数)
    负数(代表从右往左数,从负1开始数)

    【step】决定字符串复制指定内容数数的左右方向
    正负代表 从start值往右数(step为正数时),还是从start值往左数(step为负数时)
    step的值代表每隔【step(绝对值)-1】个取1次数,值不能是0

    【end】 字符串复制指定内容的结束值,开区间不包含此end值
    “”"

    print(m[2:9])# 范围cdefghij(步长step默认无间隔,正数步长从左往右,不包含end值)打印 cdefghi
    print(m[2:9:2])#范围cdefghij 因为setp步长是2 故每隔(2-1=1)1个取1次的值    打印cegi
    print(m[2:9:1])# 打印cdefghi 因为setp步长是1 故每隔(1-1=0)无间隔取值     打印 cdefghi
    #print(m[2:9:0])# 步长值不能是0,否则报错
    print(m[2:9:-1])#字符串start值c,步长为负数为从右往左取数,(abc是0 1 2)往右数才能继续是3 4 5 6 7 8 9 往左数不到9 故打印 空数据
    print(m[9:2:-1])#字符串start值j,step值是负数,从右往左数到结束值2,不包含end值2 打印jihgfed
    print(m[2:])#如果只设置了start,会一直取到最后的值                            打印 cdefghijklmnopqrstuvwxyz
    print(m[:9])#如果只设置了end,会从头开始取 直到end-1结束                       打印 abcdefghi
    print(m[::]) #从头到尾正向复制一份 打印 abcdefghijklmnopqrstuvwxyz
    print(m[::-1])#从头到尾反向复制一份(即:从尾到头) 打印 zyxwvutsrqponmlkjihgfedcba
    print(m[-9:-5]) #从右边第一位z负1开始数到负9 范围rstuvwxyz,step默认是正数,所以从左往右取数 取到-5-1=-6的位数打印 rstu
    print(m[-9:-5:1]) # 等同于 print(m[-9:-5]) 的写法 打印 rstu
    print(m[-9:5:1])#从右边第一位z负1开始数到负9 范围r(-9)s(-8)t(-7)u(-6)v(-5)w(-4)x(-3)y(-2)z(-1)
                    #步长为正数从左往右取数到正5,开始值r(-9)的右边都是负数,没有合法数据,打印空数据
    print(m[-9:1:-2]) # -2为负数 从开始值r从左往右边到end值1(从右往左数1的值是b)每隔1个(|-2|-1=1)取一个数
                      #范围bcdefghijklmnopqr 打印结果rpnljhfd (end值不打印)
    print(m[-9:0:-2]) #(end 0的值是a)所以范围bcdefghijklmnopqra 打印结果rpnljhfdb
    print('这就是字符串切片了')
    

    在这里插入图片描述

    展开全文
  • Python字符串切片操作

    万次阅读 多人点赞 2019-03-21 20:36:07
    我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1...今天恋习Python主要与大家一起谈谈Python字符串切片操作的那些事。 一、字符串的切片 ...
  • 详解Python字符串切片

    千次阅读 2021-02-10 07:09:09
    python中,我们定义好一个字符串,如下所示。在python中定义个字符串然后把它赋值给一个变量。我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始(==,我自己都觉得写的好脑残了)这个时候呢,我们...
  • python 字符串下标与切片的实例代码,如下: # !/usr/bin/env python name = ksunone # 索引 (下标) 所谓“下标”,就是编号,就好比超市中的存储柜的编号,通过这个编号就能找到相应的存储空间 列表与元组...
  • Python 字符串直接在方括号([])中使用索引即可获取对应的字符,其基本语法格式为:string[index]这里的 string 表示要截取的字符串,index 表示索引值。【例1】s = 'crazyit.org is very good'# 获取s中索引2处的....
  • python 字符串 切片

    千次阅读 2020-12-02 15:35:21
    ####################概念######################'''int 整数str 字符串 一般不存放大量的数据bool 布尔值,用来判断。 True,Falselist 列表。存放大量数据,[]表示,里面可以放各种数据类型tuple 元祖,只读列表 ...
  • Python截取字符串(字符串切片方法详解 从本质上讲,字符串是由多个字符构成的,字符之间是有顺序的,这个顺序号就称为索引(index)。Python 允许通过索引来操作字符串中的单个或者多个字符,比如获取指定索引处...
  • Python字符串切片操作知识详解发布于 2016-04-23 06:17:03 | 170 次阅读 | 评论: 0 | 来源: 网友投递Python编程语言Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个...
  • Python字符串切片及定位详解

    千次阅读 2021-11-30 14:22:01
    字符切片 str[n1:n2:n3] 表示按步长为n3(每隔...print(str[0]) # 输出字符串第一个字符 print(str[2:5]) # 输出从第三个开始到第五个的字符 print(str[2:]) # 输出从第三个开始后的所有字符 print(str[1:5:2]) # 输
  • Python字符串切片详解

    万次阅读 多人点赞 2021-02-08 16:25:56
    python中,我们定义好一个字符串,如下所示。 s = ‘abcdefghijklmnop’ 在python中定义个字符串然后把它赋值给一个变量。我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始。这个时候呢,我们可以...
  • 一:取字符串中第几个字符print "Hello"[0] 表示输出字符串中第一个字符print "Hello"[-1] 表示输出字符串中最后一个字符二:字符串分割print "Hello"[1:3]#第一个参数表示原来字符串...
  • 目录1、切片2、查找2.1 find()方法:2.2 index()方法:2.3 count()方法:2.4 rfind()和rindex():3、修改3.1 replace():替换3.2 split():按照指定字符分割字符串,返回一个列表3.3 join():3.4 capitalize():将...
  • 当然,熟练掌握python字符串操作,在日常编程中有不可替代的操作。 那么,在python中,字符串有哪些内置方法呢? 我们可以调用 dir() 函数来查看相关BIF >>> dir(str) ['__add__', '__class__', '_...
  • 原标题:深入浅谈:Python字符串切片操作来自:恋习Python(微信号:sldata2017)我们基本上都知道Python的序列对象都是可以用索引号来引用的元素的,索引号可以是正数由0开始从左向右,也可以是负数由-1开始从右向...
  • python中,我们定义好一个字符串,如下所示。 s = 'abcdefghijklmnop' 在python中定义个字符串然后把它赋值给一个变量。我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始。这个时候呢,我们可以...
  • Python字符串使用详解

    千次阅读 多人点赞 2021-12-13 14:10:29
    字符串是一种数据结构,这让我们有机会学习索引和切片——用于从字符串中提取子串的方法。 1 字符串索引 在Python语法支持中,我们简单的阐述过字符串使用,现在我们看看python程序在处理字符串时,如何对其...
  • S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表。如果指定最大分割数,则在最大分割时结束。如果分隔符未指定或者为none,则分隔符默认为空格。注意:分隔符不...
  • 今天想要分享给大家的内容是Python字符串切片相关的内容,包括Python字符串切片含义、操作等内容,这方面的知识如果你也有所欠缺,那么一起来学习一下吧:我们基本上都知道Python的序列对象都是可以用索引号来引用的...
  • python字符串切片操作

    千次阅读 2021-04-08 15:03:04
    python字符串切片操作1.去掉字符串中所有的空格2. 获取字符串中汉字的个数3.将字母全部转换为大写和小写4.根据标点符号对字符串进行分行5. 去掉字符串数组中每个字符串的空格(循环) 1.去掉字符串中所有的空格 ...
  • python字符串切片操作

    千次阅读 2020-06-13 10:51:27
    切片 方法适用于 字符串、列表、元组 切片 使用 索引值 来限定范围,从一个大的 字符串 中 切出 小的 字符串 列表 和 元组 都是 有序 的集合,都能够 通过索引值 获取到对应的数据 字典 是一...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 60,148
精华内容 24,059
关键字:

python字符串切片用法