问题:
给定一个包含大写字母和整数(从0到9)的字符串,编写一个函数,按字母和数字之和的顺序返回字母。你知道吗
我的代码:
import re
class Solution:
def rearrange(self, str):
# Write your code here
if str == "":
return str
sum = 0
letter = []
for i in range(len(str)):
if re.search("([A-Z])", str[i]):
letter.append(str[i])
else:
sum += int(str[i])
letsort = sorted(letter)
letstr = "".join(letsort)
result = letstr + str(sum)
return result
错误:
Traceback (most recent call last):
File "/code/Main.py", line 20, in
ans = solution.rearrange(str)
File "/code/Solution.py", line 20, in rearrange
result = letstr + str(sum)
TypeError: 'str' object is not callable
我不明白原因。你知道吗
str
是Python中的一个保留字,您也可以通过命名rearrange()
第二个参数str
来重写它。更改rearrange()
第二个参数的名称就可以了。你知道吗您已将变量命名为
str
—与用于转换为字符串的内置函数同名。您需要重命名它,请尝试以下操作:相关问题 更多 >
编程相关推荐