我设定的问题是:
“对于文本块的编码,使用字符串比使用数字更容易,以避免前导零问题
因此,我们需要一个像code_digit(n, key)
这样的函数来处理字符而不是数字
为此,编写一个与code_char(char, key)
类似的函数code_digit(n, key)
,除了它的参数是字符,假设它们都在'0'到'9'的范围内,而不是整数,它返回一个字符。
所以例如
>>> code_char('1', '2')
'3'
我的代码
def code_char(char, key):
ichar = int(char)
ikey = int(key)
print(ichar+ikey)
这是我得到的最远但引号不存在。
>>> code_char('1', '2')
3
任何帮助将不胜感激!
code_digit
功能如下:
def code_digit(n, key):
result = n + key
mod = result%10
print (mod)
答案 0 :(得分:0)
你的代码错误地做了两件事:
chr
或str
时不会在其周围添加引号。chr
或str
。所以,你的代码应该是这样的:
def code_char(char, key):
ichar = int(char)
ikey = int(key)
return str(ichar+ikey)
或
def code_char(char, key):
ichar = int(char)
ikey = int(key)
return chr(ord('0') + ichar+ikey)