Python字符串及其操作---索引、合并、拆分、格式化

1.概述

  • 在Python中,字符串是除数字外最重要的数据类型。字符串无处不在:将字符串输出到屏幕上;从用户的键盘输入读取字符串;文件通常被视为大型字符串;网页大部分是由文本组成的。
  • 字符串是一种聚合数据结构,可充分利用索引和切片—用于从字符串中提取子串。
  • 而Python正则表达式库,是一种用来处理字符串的微型语言,但功能强大。

2.通用序列操作

  • Python中,字符串、列表和元组都属于序列。
  • 序列有一些通用的操作。包括:索引(indexing)、切片(slicing)、加(adding)、乘(multiplying)、检查某个元素是否属于序列的成员(成员资格)、计算序列长度、找出最大元素和最小元素等。

2.1索引

  • 序列中的所有元素都是有编号的—从0开始递增。这些元素可以通过编号分别访问。索引有正索引和负索引,可根据实际情况选用。
  • 字符串就是一个由字符组成的序列,处理字符串时,经常需要访问其中的各个字符。索引0指向第1个字符。

例如:字符串’apple’的正索引和负索引
apple

s = 'apple'
#索引
s[0]
for i in s:
    print(i,end=" ")

for i in range(len(s)):
    print(s[-(i+1)],end="") #反转列表,用索引
    
for i in reversed(s): #反转列表 用函数
    print(i,end="")
	

2.2 切片

  • 与使用索引访问单个元素类似,可以使用分片操作来访问一定范围内的元素。分片是实际应用中经常使用的技术,被截取的部分称为“子串”
  • Python 3支持的分片格式为:S[i:j:k]
    表示:索引S对象中的元素,从索引为i直到索引为j-1,每隔k个元素索引一次,第三个限制k为步长,默认为1,也可以使用负数作为步长,步长-1表示分片将会从右至左进行而不是通常的从左至右,实际效果主是将序列反转。
  • 在Python中,还可以使用split()函数来截取字符串。
#切片索引,类似列表
food = "apple pie"
food[0:5]
food[0:5:2]
food[::2]
food[1::2]
food[::-1] #反转字符串 还可以用函数 reversed(s)

#一个应用
def get_ext(fname):
    """
    返回文件的扩展名
    """
    dot = fname.rfind(".") #获得.的索引(从右边开始找)
    if dot == -1:
        return ''
    else:
        return fname[(dot+1):]
    
get_ext("apple.avi")

2.3 字符串合并

这一节参考了博客.
Python中有join()和os.path.join()两个函数,具体作用如下:
join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串
os.path.join(): 将多个路径组合后返回

  1. join()函数
    语法: ‘sep’.join(seq)
    参数说明
    sep:分隔符。可以为空
    seq:要连接的元素序列、字符串、元组、字典
    上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串
    返回值:返回一个以分隔符sep连接各个元素后生成的字符串.

  2. os.path.join()函数
    语法: os.path.join(path1[,path2[,…]])
    返回值:将多个路径组合后返回
    注:第一个绝对路径之前的参数将被忽略.

#字符串拼接,合并
str1 = "Hello, "
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值