Python截取字符串


问题

最近练习Python的过程中,发现我要截取从某个位置开始到结尾的子串,却想不出什么好方法实现。

比如"123456",我要"456"这个子串

错误的尝试

我先开始是这样获取的:

str = "123456"
print(str[3:len(str)-1]+str[len(str)-1]) # 456

这样太长太复杂冗余太高了有没有!

然后我想起了python字符串中有两套序列:

然后就改进成这个样子:

str = "123456"
print(str[3:-1]+str[-1]) # 456

正确的做法

实际上[:]前后是可以省略的,于是乎可以这样做:

str = "123456"
print(str[3:]) # 456

诶,这回看着才舒服,这才是Python 的简洁之美呀

补充

正好写到这里啦,补充测试一下截取字符串的各种用法吧~

str = "123456"
# 截取字符串的全部字符(好像没啥用哈哈)
print(str[:]) # 123456
# 截取第一位到第三位的字符串
print(str[0:3]) # 123
# 截取从3个字符到结尾
print(str[3:]) # 456
# 截取从头开始到倒数第三个字符之间的字符串
print(str[:-3]) # 123
# 创造一个逆序字符串
print(str[::-1]) # 654321


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM