-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path加一.py
38 lines (31 loc) · 1.72 KB
/
加一.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
"""
给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。
最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。
你可以假设除了整数 0 之外,这个整数不会以零开头。
示例 1:
输入:digits = [1,2,3]
输出:[1,2,4]
解释:输入数组表示数字 123。
示例 2:
输入:digits = [4,3,2,1]
输出:[4,3,2,2]
解释:输入数组表示数字 4321。
示例 3:
输入:digits = [0]
输出:[1]
这行代码 number = int("".join(map(str, digits))) 是一步一步将一个由数字组成的列表转换成一个整数。下面是逐步解释:
map(str, digits): 这个函数遍历 digits 列表中的每一个元素,并使用 str 函数将每个元素(数字)转换成字符串。
例如,如果 digits 是 [1, 2, 3],那么 map(str, digits) 的结果会是 ['1', '2', '3']。
"".join(...): join 方法是一个字符串方法,用于将序列中的元素以指定的字符(此处为空字符串)连接生成一个新的字符串。
在这个例子中,它把 ['1', '2', '3'] 连接成 '123'。这个步骤将列表中的单个数字字符串连接成一个连续的数字字符串。
int(...): 最后,使用 int 函数将字符串 '123' 转换成整数 123。这样,我们就得到了原始数字列表表示的整数。
因此,这行代码的整个作用就是将 [1, 2, 3] 这样的数字列表转换成 123 这样的整数。
"""
class Solution:
def plusOne(self, digits):
# 将数字列表转换为整数
number = int("".join(map(str, digits)))
# 对整数加一
number += 1
# 将结果转换回整数列表
return [int(digit) for digit in str(number)]