望采纳!谢谢
def coding(s):
n = len(s)
#print(n)
if s.count("0" ) == n:
return 'A'
elif s.count('1') == n:
return 'B'
else:
return 'C' + coding(s[:n//2]) + coding(s[n//2:])
s = input()
print(coding(s))
代码写出来都一样,主要是要理解递归函数的原理:基准条件和递归条件。
拿本例来说,
return 'A'
elif s.count('1')==n: return 'B'
else: return ('C'+coding(s[:n//2])+coding(s[n//2:]))
s = input('请输入一个Kitty猫基因的01字符串:').strip()
print('这个Kitty猫基因的ABC编码是:{}'.format(coding(s)))
```