python 字符串索引取值的实现示例

 更新时间:2023年07月05日 09:59:28   作者:安迪python学习笔记  
本文主要介绍了python 字符串索引取值的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

1. 字符串索引的定义

【定义】

字符串中的每一元素都有一个属于自己的编号,这个编号就叫索引。

【隐喻】

假设全班同学集体去旅游,住酒店时每个人一个房间,酒店的房间从左到右都有一个房间号。字符串的元素也一样,每个元素在计算机中都需单独住一个房间,只是在Python中我们给这个房间号起了另一个高大上的名字索引

字符串索引可以理解成字符串元素的房间号。

字符串索引=字符串元素房间号

【索引和房间号的区别】

房间号从1开始编号,索引从0开始编号。

房间号没有负数,索引有正索引和负索引。

【知识扩充】

序列是一种可迭代的、元素有序的容器类型的数据。

序列包括列表(list)、字符串(str)、元组(tuple)和字节序列(bytes)等。

列表、元组都是Python的一种数据类型。

只要是序列就可以通过索引取值。

上述内容仅做了解,后面的课程会进行具体讲解。

2. 索引编号规则

2.1. ⚠️索引通常从0开始编号!

千万注意字符串第1个元素的索引为0,不为1。

2.2 正索引

⚠️正索引从左往右开始编号,编号从0开始!

2.3 负索引

⚠️负索引从右往左开始编号,编号从-1开始!

3. 索引的取值

【语法】

字符串索引取值由3部分构成:

  • 字符串变量名或者字符串本身。
  • 英文中括号。
  • 索引。

3.1 正索引取值

【索引0取字符串的第1个元素】

# 将字符串Hello赋值给变量a
a = 'Hello'
# 取字符串的第1个元素
# 变量名a;英文中括号;索引为0
print(a[0])

【终端输出】

H

运行程序,终端输出字符串的第1字符H

【直接从字符串本身中取值】

print('Hello'[0])

【终端输出】

H

【索引1取字符串的第2个元素】

# 将字符串Hello赋值给变量a
a = 'Hello'
# 取字符串的第2个元素
# 变量名a;英文中括号;索引为1
print(a[1])

【终端输出】

e

运行程序,终端输出字符串的第2字符e

【直接从字符串本身中取值】

print('Hello'[1])

【终端输出】

e

【索引4取字符串的第5个元素】

# 将字符串Hello赋值给变量a
a = 'Hello'
# 取字符串的第5个元素
# 变量名a;英文中括号;索引为4
print(a[4])

【终端输出】

o

运行程序,终端输出字符串的第5字符o

【直接从字符串本身中取值】

print('Hello'[4])

【终端输出】

o

3.2 负索引取值

【索引-1取字符串的最后一个元素】

# 将字符串Hello赋值给变量a
a = 'Hello'
# 取字符串的最后一个元素
# 变量名a;英文中括号;索引-1
print(a[-1])

【终端输出】

o

运行程序,终端输出字符串的最后一个字符o

【直接从字符串本身中取值】

print('Hello'[-1])

【终端输出】

o

【索引-2取字符串的倒数第2个元素】

print('Hello'[-2])

【终端输出】

1

运行程序,终端输出字符串的倒数第2字符l

【直接从字符串本身中取值】

print('Hello'[-2])

【终端输出】

1

4. 取身份证号码中表示性别的数字

中国居民身份证号码中的倒数第2位代表性别。
倒数第2位为奇数代表男性。
倒数第2位为偶数代表女性。

取出代表性别的数字

# 将身份证号码赋值给变量id_card 
id_card = "533001199901013029"
# 用负索引从id_card中取出代表性别的倒数第2位数字
print(id_card[-2])
# 用正索引从id_card中取出代表性别的第17位数字
print(id_card[16])

【终端输出】

2
2

5. 课后练习

题目要求:编写程序根据用户输入的身份证号码判定用户的性别。

【参考答案1】

# 用input函数从终端获取身份证号码
id_card = input("请输入18位身份证号码:")
# 从字符串中取出代表性别的数字并赋值给变量sex
# input函数得到的是字符串类型,因此我用int函数将其转换为整数类型,方便后面进行数学运算
sex = int(id_card[-2])
# 如果sex除以2余数不等于0,则sex为奇数,奇数代表男性
if sex%2 != 0 :
    print("性别:男")
else:
    print("性别:女")

【终端输出】

性别:女

  • sex%2 != 0 表示变量sex除以2余数不等于0。
  • !=表示不等于。
  • ==表示等于。

【参考答案2】

# 用input函数从终端获取身份证号码
id_card = input("请输入18位身份证号码:")
# 从字符串中取出代表性别的数字并赋值给变量sex
# input函数得到的是字符串类型,因此我用int函数将其转换为整数类型,方便后面进行数学运算
sex = int(id_card[-2])
# 如果sex除以2余数等于0,则sex是偶数,偶数代表女性
if sex%2 == 0 :
    print("性别:女")
else:
    print("性别:男")

【终端输出】

性别:女

题目要求:从【牛奶:¥69,$10】句子中取出代表人民币和美元的符号。

上述语句的意思是牛奶的价格是69元或10美元。

  • ¥是人民币符号。
  • $是美元符号。

【参考答案】

# 将题目给的语句赋值给变量str_1
str_1 = "牛奶:¥69,$10"
# 提取字符串的第4个字符,第4个字符索引为3
RMB = str_1[3]
# 提取字符串的倒数第3个字符,并赋值给变量dollar
dollar = str_1[-3]
# 用print函数输出提取到的字符
print(RMB)
print(dollar)

【终端输出】


$

dollar[ˈdɒlə]:美元。

【备注】本文图片来自关东升的《看漫画学Python》。

6. 总结

 到此这篇关于python 字符串索引取值的实现示例的文章就介绍到这了,更多相关python字符串索引取值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python matplotlib实现折线图的绘制

    Python matplotlib实现折线图的绘制

    Matplotlib作为Python的2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。本文将利用Matplotlib库绘制折线图,感兴趣的可以了解一下
    2022-03-03
  • Python实现读取Linux系统的CPU以及内存占用

    Python实现读取Linux系统的CPU以及内存占用

    这篇文章主要为大家详细介绍了如何利用Python语言实现Linux系统的CPU以及内存占用,文中的示例代码讲解详细,具有一定的学习价值,需要的可以收藏一下
    2023-05-05
  • Python使用正则实现计算字符串算式

    Python使用正则实现计算字符串算式

    这篇文章主要介绍了Python使用正则实现计算字符串算式的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • python的数据与matlab互通问题:SciPy

    python的数据与matlab互通问题:SciPy

    这篇文章主要介绍了python的数据与matlab互通问题SciPy,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 详解Python如何使用Self类型实现返回类的实例对象

    详解Python如何使用Self类型实现返回类的实例对象

    在 Python 中,类方法通常会返回类的实例对象,本文将详细介绍如何在 Python 中使用 Self 类型来返回类的实例对象,并提供丰富的示例代码帮助更好地理解,快跟随小编一起学习起来吧
    2024-02-02
  • python学习--使用QQ邮箱发送邮件代码实例

    python学习--使用QQ邮箱发送邮件代码实例

    这篇文章主要介绍了python使用QQ邮箱发送邮件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Python实现用手机监控远程控制电脑的方法

    Python实现用手机监控远程控制电脑的方法

    这篇文章主要介绍了Python实现用手机监控远程控制电脑的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python元组知识点总结

    Python元组知识点总结

    在本篇文章里小编给大家分享了关于Python元组的相关知识点内容,有兴趣的朋友们学习下。
    2019-02-02
  • pd.to_datetime中时间object转换datetime实例

    pd.to_datetime中时间object转换datetime实例

    本文主要介绍了pd.to_datetime中时间object转换datetime实例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • python获取栅格点和面值的实现

    python获取栅格点和面值的实现

    这篇文章主要介绍了python获取栅格点和面值的实现,具有很好的参考价值,希望对大家有多帮助。一起跟随小编过来看看吧
    2020-03-03

最新评论