在字符串上运行一个函数来检查奇偶校验并添加最后一个字母

时间:2013-10-31 13:51:22

标签: python

我只是因为我的生活无法让这个功能做我想做的事情

def fix(Y):
    if (len(Y)% 2)==1:
        if Y[-1]=='Z':
            Y=Y+'Q'
        else:
            Y=Y+'Z'  

取字符串Y,如果它有奇数长度,则在末尾添加Z.如果Z已经是最后一个字母,请添加Q.我做错了什么?

1 个答案:

答案 0 :(得分:4)

您只传递Y的值,而不是就地更改它。

因此,您的函数应返回固定值:

def fix(Y):
    if (len(Y)% 2)==1:
        if Y[-1]=='Z':
            Y=Y+'Q'
        else:
            Y=Y+'Z' 
    return Y

之后,您可以将固定值重新分配给Y

Y = fix(Y) #overwrites the previous value, put the fixed one.

希望这有帮助!