python中字符串索引_Python字符串的索引与访问字符串中的字符

字符串是Python中一种非常重要的数据类型。Python字符串是字符的集合,是由单引号、双引号或三引号包裹起来的若干字符的序列。Python字符串中的每个字符使用ASCII或Unicode字符编码,可以认为Python字符串是Unicode字符的集合。在前面的教程中,本站 已介绍了Python字符串的定义方法:《Python中的字符串String》。这篇文章将重点介绍Python字符串字符索引的方法及使用索引访问字符串中的字符。

Python字符串索引方法

与其它语言一样,Python字符串的索引也是从0开始的,下面给出一个字符串“翔宇亭IT乐园”的索引方式:

Python中字符串的索引编号方式

字符

I

T

索引

0

1

2

3

4

5

6

从上面的示意中,可以看到,Python跟其它语言一样,把字符串从左到右进行编索引,且是从0开始的,每个字符都会有一个索引。那么一个具有n个字符的字符串,其索引的范围是[0, n-1],如上面的字符串一共有7个字符,则其索引的范围是0~6.

有时,我们可能对字符串后端的一些字符比较感兴趣,因此,Python提供了一种从后端访问字符串中字符的方式:使用负数索引,负数索引从-1开始,从后端往前进行编写索引,如下所示:

Python中字符串的索引编号方式

字符

I

T

索引

0

1

2

3

4

5

6

后端索引

-7

-6

-5

-4

-3

-2

-1

使用索引访问字符串中的单个字符

Python中使用下面的方式可以比较方便的访问字符串中的每个字符:

str_name[index]

如下面的例子:

>>> str1 = "翔宇亭IT乐园"

>>> str1[0]

'翔'

>>> str1[1]

'宇'

>>> str1[5]

'乐'

在使用中要注意给出的索引不要越界,否则会发生错误,如下例:

>>> str1 = "翔宇亭IT乐园"

>>> str1[7]

Traceback (most recent call last):

File "", line 1, in

str1[7]

IndexError: string index out of range

>>>

因为,字符串 str1 的索引取值范围为0~6,str1[7]的使用超出了索引范围,造成程序出现错误:IndexError.

以上在Python3.8.2中的执行情况如下图所示:

20206301049537028.png

下面是从后端访问字符串中字符的一些例子:

>>> str1 = "Python is easy."

>>> str1[-1]

'.'

>>> str1[-2]

'y'

>>> str1[-7]

's'

>>> print(str1[-15])

P

>>> str1[-16] #索引越界

Traceback (most recent call last):

File "", line 1, in

str1[-16] #索引越界

IndexError: string index out of range

>>>

这个例子中,字符串一共15个字符,其负数索引是从 -15~-1,小于-15的索引将会使程序出现错误。

以上在Python IDLE中的运行情况如下图所示:

202063010571240320.png

如需转载,请注明出处和本文链接地址:翔宇亭IT乐园(http://www.biye5u.com/)

本文链接地址:http://www.biye5u.com/article/python/2020/6462.html

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值