我必须在上面的程序中定义函数vigenere来实现,但是错误。
TypeError:不支持-的操作数类型:'str‘和'int’
#checking for upper case and lower case by applying formula for chr and ord and implementing function vigenere
def vigenere(c, k):
if c.isupper():
return chr(((ord(c)-65 +ord(k) for x in k-65)%26)+65)
else:
return chr(((ord(c)-97 +ord(k) for x in k-97)%26)+97)发布于 2019-09-02 02:33:19
在我看来,您的变量k是一个字符串。老实说,我认为错误信息是相当清楚的。k的确切用途是什么?也许ord(k)或chr(k)会起作用?或者k必须是一个整数。
https://stackoverflow.com/questions/57750822
复制相似问题