Python截取字符串的简单方法实例

目录
  • 前言
  • 模版
  • 示例
    • 获取字符串的前 5 个字符
    • 获取从第 3 个字符开始,长度为 4 的截取字符串
    • 获取字符串的最后一个字符
    • 获取字符串的末尾 5 个字符
    • 获取一个截取字符串,包括除了末尾 4 个和开头第一个字符的所有字符
  • 更多示例
    • 每个字符之间间隔一个索引
    • 补充:根据指定字符截取字符串
  • 总结

前言

Python 提供了很多截取字符串的方法,被称为“切片(slicing)”。

模版如下:

string[start: end: step]

其中,

  • start:起点位置,子字符串的起始索引。该索引处的字符包含在子字符串中。start 为空时则默认为 0。
  • end:终点位置,子字符串的终止索引。该索引处的字符不包括在子字符串中。end 为空时,或者指定的值超过字符串的长度,则默认它等于字符串的长度。
  • step:步长,当前字符之后和目标字符之间的距离。step 为空时,则默认值为 1。

模版

  • string[start:end]:获取从 起点位置 到 终点位置 - 1 的所有字符
  • string[:end]:获取从 字符串开头 到 终点位置 - 1 的所有字符
  • string[start:]:获取从 起点位置 到字符串结尾的所有字符
  • string[start:end:step]:获取从 起点位置 到 终点位置 - 1 的,每个之间距离 步长 的所有字符

示例

获取字符串的前 5 个字符

string = "freeCodeCamp"
print(string[0:5])

输出:

> freeC

注意:print(string[:5]) 和 print(string[0:5]) 返回的结果一样

获取从第 3 个字符开始,长度为 4 的截取字符串

string = "freeCodeCamp"
print(string[2:6])

输出:

> eeCo

请注意,起点或终点位置索引可能为负数。负索引的意思是从字符串的末尾开始而不是从开头开始(即从右到左)开始计数。索引-1 代表字符串的最后一个字符,-2 代表倒数第二个字符,依此类推……

获取字符串的最后一个字符

string = "freeCodeCamp"
print(string[-1])

输出:

> p

获取字符串的末尾 5 个字符

string = "freeCodeCamp"
print(string[-5:])

输出:

> eCamp

获取一个截取字符串,包括除了末尾 4 个和开头第一个字符的所有字符

string = "freeCodeCamp"
print(string[1:-4])

结果:

> reeCode

更多示例

str = “freeCodeCamp”

print str[-5:-2] # prints ‘eCa'
print str[-1:-2] # prints ‘' (empty string)

每个字符之间间隔一个索引

string = "freeCodeCamp"
print(string[::2])

结果:

> feCdCm

补充:根据指定字符截取字符串

先获取字符的下标位置;

再通过以上的方法截取;

Python提供index 函数,检测字符串中是否包含子字符串,通常表现为 某些特定字符,特定单词;a.index(b, begin, end),a为需要校验字符串,b为字符串,begin 为开始截取的字符的下标(默认为0),end结束字符下标(默认为字符长度)

示例:

str1 = "Hello.python";
str2 = ".";
print str1.index(str2);#结果5
print str1.index(str2, 2);#结果5
print str1.index(str2, 10);#结果报错,没找到子字符串

综合以上所述,按照字符截图示例

str1 = "Hello.python";
str2 = ".";
print str1.index(str2);#结果5
print str1[:str1.index(str2)]     #获取 "."之前的字符(不包含点)  结果 Hello
print str1[str1.index(str2):] ; #获取 "."之前的字符(包含点) 结果.python

总结

到此这篇关于Python截取字符串的简单方法的文章就介绍到这了,更多相关Python截取字符串内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    去空格及特殊符号 s.strip().lstrip().rstrip(',') Python strip() 方法用于移除字符串头尾指定的字符(默认为空格). 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sStr1 = 'strcpy2' print sStr2 连接字符串 #strcat(sStr1,sStr2) sStr1 = 'strcat' sStr2 = 'append' sStr1 += sStr2 print

  • Python中的字符串切片(截取字符串)的详解

    字符串索引示意图 字符串切片也就是截取字符串,取子串 Python中字符串切片方法 字符串[开始索引:结束索引:步长] 切取字符串为开始索引到结束索引-1内的字符串 步长不指定时步长为1 字符串[开始索引:结束索引] 练习样例 # 1.截取2 - 5位置的字符 num_str_1 = num_str[2:6] print(num_str_1) # 2.截取2 - 末尾的字符 # 当开始索引和结束索引为开始和结束时可以省略不写 num_str_1 = num_str[2:] print(num_s

  • Python字符串拼接、截取及替换方法总结分析

    本文实例讲述了Python字符串拼接.截取及替换方法.分享给大家供大家参考,具体如下: python字符串连接 python字符串连接有几种方法,我开始用的第一个方法效率是最低的,后来看了书以后就用了后面的2种效率高的方法,跟大家分享一下. 先介绍下效率比较低的方法: a = ['a','b','c','d'] content = '' for i in a: content = content + i print content content的结果是:'abcd' 后来我看了书以后,发现书上

  • Python实现针对含中文字符串的截取功能示例

    本文实例讲述了Python实现针对含中文字符串的截取功能.分享给大家供大家参考,具体如下: 对于含多字节的字符串,进行截断的时候,要判断截断处是几字节字符,不能将多字节从中分割,避免截断后乱码 下面给出utf8和gb18030上的实现, 用任何一种都可以,可以先进行转码,用encode, decode; 方法1:对utf8: def subString(string,length): if length >= len(string): return string result = '' i =

  • Python 字符串操作实现代码(截取/替换/查找/分割)

    Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. 复制代码 代码如下: # 例1:字符串截取str = '12345678'print str[0:1]>> 1   # 输出str位置0开始到位置1以前的字符print str[1:6]  >> 23456   # 输出str位置1开始到位置6以前的字符num = 18str = '0000' + str(num) # 合并字符串pr

  • Python中文字符串截取问题

    先来看个例子: #-*- coding:utf8 -*- s = u'中文截取' s.decode('utf8')[0:3].encode('utf8') # 结果u'中文截取 延伸阅读: UTF-8中的汉字占用多少字节? 占2个字节的:〇 占3个字节的:基本等同于GBK,含21000多个汉字 占4个字节的:中日韩超大字符集里面的汉字,有5万多个 一个UTF-8数字占1个字节 一个UTF-8英文字母占1个字节 在查找 UTF-8 编码资料时发现,很多的帖子说的 UTF-8 编码里,一个汉字占用3

  • Python实现简单截取中文字符串的方法

    本文实例讲述了Python实现简单截取中文字符串的方法.分享给大家供大家参考.具体如下: web应用难免会截取字符串的需求,Python中截取英文很容易: >>> s = 'abce' >>> s[0:3] 'abc' 但是截取utf-8的中文机会截取一半导致一些不是乱码的乱码.其实utf8截取很简单,这里记下来作为备忘 #-*- coding:utf8 -*- s = u'中文截取' s.decode('utf8')[0:3].encode('utf8') # 结果u

  • python 截取 取出一部分的字符串方法

    下面是split截取获得 >>> str = 'http://manualfile.s3.amazonaws.com/pdf/gti-chis-1-user-9fb-0-7a05a56f0b91.pdf' >>> print str.split() ['http://manualfile.s3.amazonaws.com/pdf/gti-chis-1-user-9fb-0-7a05a56f0b91.pdf'] >>> print str.split('

  • python 用下标截取字符串的实例

    运行环境: win7 64位 python 2.7 pycharm python 源码如下 # -*- coding: utf-8 -*- str = '0123456789' print(str[0:3]) print(str[0:-1]) print(str[-1]) print(str[2:5]) print(str[6:-1]) print(str[6:]) 运行效果如下: 012 012345678 9 234 678 6789 以上这篇python 用下标截取字符串的实例就是小编分享

  • Python 字符串、列表、元组的截取与切片操作示例

    本文实例讲述了Python 字符串.列表.元组的截取与切片操作.分享给大家供大家参考,具体如下: demo.py(字符串.列表.元组的截取): # 切片(截取) [开始索引:结束索引:步长] 步长默认为1 结束索引默认截取到末尾 # 字符串的截取 print("012345"[1:3]) # 12 # 列表的截取 print([0,1,2,3,4,5][1:3]) # [1, 2] # 元组的截取 print((0,1,2,3,4,5)[1:3]) # (1, 2) # 字典的元素是无

随机推荐