Python .replace()的问题 美团笔试

我在赛码网参加美团的笔试的时候,好像出现了a.replace() 不能用的问题。有人遇到过吗?
这是我的代码,问题是类似回文数字串。第一行n,n组数据。第二行l,一串数字的长度,第三行是一串数字。题目要求是判断能否改变一个数变成回文,如果不能,改变一个数,让数字尽量小。
def IsReversible(bricks):
    count = 0
    for i in range(len(bricks)//2):
        if bricks[i] != bricks[-i-1]:
            count +=1
    if count > 2:
        return False
    else:
        return True


n = int(input())
for i in range(n):
    l = int(input())
    bricks = str(input())
    #如果可逆,那么将奇数型字符串的中间一位替换为0
    if IsReversible(bricks):
        if l%2 == 1:
            bricks.replace(bricks[l//2], '0')
    else:
        for j in range(l):
            if int(bricks[j]) > 0:
                bricks.replace(bricks[j], '0')
                break
print(bricks)

#笔试题目##美团#
全部评论
bricks=bricks.replace(bricks[l//2], '0') 这样应该就对了。 字符串是不可变类型,replace()方法不能原地修改,需要重新赋值。
1 回复 分享
发布于 2021-03-27 18:31
是我写错了吗
点赞 回复 分享
发布于 2021-03-27 18:10

相关推荐

11-14 16:13
已编辑
重庆科技大学 测试工程师
Amazarashi66:不进帖子我都知道🐮❤️网什么含金量
点赞 评论 收藏
分享
勇敢大角牛2:项目太基础了。小demo就不要往简历中写了,得分是什么鬼,大作业?。并且项目经历和你的求职意向岗位不匹配,没有体现硬件的亮点。话有点糙,还请谅解
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务