字符切片:
- 字符串[开始索引:结束索引:步长]
- 切取字符串为开始索引到结束索引-1内的字符串
- 步长不指定时,步长为1 字符串[开始索引:结束索引]
应用一:
leetcode 7. 整数反转
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
示例 1:
输入: 123
输出: 321
示例 2:
输入: -123
输出: -321
示例 3:
输入: 120
输出: 21
注意:
假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为
[
−
2
31
,
2
31
−
1
]
{ [−2^{31}, 2^{31} − 1]}
[−231,231−1]。请根据这个假设,如果反转后整数溢出那么就返回 0。
示例 1:
class Solution:
def reverse(self, x: int) -> int:
# 字符切片
if x >= 0:
x = str(x)
rev = x[::-1]
else:
x = str(x)
x = x[1::]
rev = '-' + x[::-1]
# 对于末尾为0的情况,python会自动处理
# num = '012'
# int(num) => 12
# float(num) => 12.0
rev = float(rev)
if rev < -2147483648 or rev > 2147483647:
return 0
rev = int(rev)
return rev