网站首页 > 知识剖析 正文
有小伙伴在 Stack Overflow 上提问:想从字符串的第三个字符开始截取到末尾,该怎么操作呢,比如 myString[2:end] 可行吗?如果省略第二个参数是不是就表示截取到末尾,省略第一个参数是不是就从开头开始呢?
下面就给大家详细介绍 Python 中截取字符串的方法:
- 基本切片操作:Python 里通过切片来截取字符串,用 [start:stop] 的形式,能得到从索引 start 到 stop - 1 的子字符串。比如:
x = "Hello World!"
print(x[2:]) # 输出 'llo World!'
print(x[:2]) # 输出 'He'
print(x[:-2]) # 输出 'Hello Worl'
print(x[-2:]) # 输出 'd!'
print(x[2:-2]) # 输出 'llo Worl'
- 步长参数:切片还有第三个参数 step,表示步长。比如反转字符串就可以用 [::-1];选取间隔字符可以用 [::2]。像 "H-e-l-l-o- -W-o-r-l-d"[::2] 会输出 "Hello World"。
- 和其他语言的区别:像 PHP 和 Perl 的 Substr() 函数参数是起始位置和长度,而 Python 切片需要的是起始位置和结束位置的后一位。所以 Substr(s, beginning, LENGTH) 在 Python 里要写成 s[beginning : beginning + LENGTH]。
- 特殊情况:
- 用 [:] 可以对字符串进行浅拷贝,但由于字符串是不可变类型,直接赋值 a = b 就够了。
- 可以用 None 替代空位置来表示“从开头”或“到末尾”,在函数里很有用。比如:
def substring(s, start, end):
return s[start:end]
print(substring('abcde', 0, 3)) # 输出 'abc'
print(substring('abcde', 1, None)) # 输出 'bcde'
- 还能使用 `slice` 对象,让代码更易读。例如:
string = "my company has 1000$ on profit, but I lost 500$ gambling."
EARNINGS = slice(15, 19)
LOSSES = slice(43, 46)
final = int(string[EARNINGS]) - int(string[LOSSES])
print(final) # 输出 500
大家学会了吗?快去试试用这些方法截取字符串吧!
猜你喜欢
- 2025-05-28 JPHP--一款基于JVM的新PHP编译器
- 2025-05-28 深入浅出之JWT(JSON Web Token)
- 2025-05-28 PHP8的常量-PHP8知识详解
- 2025-05-28 源生PHP和框架下PHP的效率对比?
- 2025-05-28 【php学习笔记】php中str_shuffle()方法使用笔记
- 2025-05-28 【php学习笔记】php中str_pad()方法使用笔记
- 2025-05-28 Centos安装php高版本
- 2025-05-28 PHP页面跳转
- 2025-05-28 从 PHP5 到 PHP9:一次低调却坚定的进化之路
- 2025-05-28 【php学习笔记】php中strrev()方法使用笔记
- 05-30mysql 之json字段详解(多层复杂检索)
- 05-30SQL注入基础
- 05-30MySQL新手必看!15个高频SQL语句,让你从菜鸟变大神!
- 05-30MySQL 避坑指南之隐式数据类型转换
- 05-30MySQL进阶系列:SQL执行计划分析及执行方式
- 05-30java 培训 MySQL 一次性插入多行数据的操作
- 05-30数据库迁移有什么技巧?|分享强大的database迁移和同步工具
- 05-30全网最硬核操作:10亿数据如何最快插入MySQL?
- 最近发表
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)