繁体   English   中英

将一位数字代码转换为完整的单词代码python

[英]Turn single digit code into full word code python

我正在为我的学校进行单词加密,但不知道如何将其从一位数字加密转换为完整单词。 我希望能够一次只用一个字母而不是一个字母写完整的单词。 如果有人可以帮助我解决这个问题,我将非常感谢

while True:
print("Input letters you would like to encrypt")
IN= input()

if IN=="a":
    print("BCDEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="A":
    print("BCDEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="b":
    print("ACDEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="B":
    print("ACDEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="c":
    print("ABDEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="C":
    print("ABDEFGHIJKLMNOPQRSTUVWXYZ")   
elif IN=="d":
    print("ABCEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="D":
    print("ABCEFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="e":
    print("ABCDFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="E":
    print("ABCDFGHIJKLMNOPQRSTUVWXYZ")
elif IN=="f":
    print("ABCDEGHIJKLMNOPQRSTUVWXYZ")
elif IN=="F":
    print("ABCDEGHIJKLMNOPQRSTUVWXYZ")
elif IN=="g":
    print("ABCDEFHIJKLMNOPQRSTUVWXYZ")
elif IN=="G":
    print("ABCDEFHIJKLMNOPQRSTUVWXYZ")
elif IN=="h":
    print("ABCDEFGIJKLMNOPQRSTUVWXYZ")
elif IN=="H":
    print("ABCDEFGIJKLMNOPQRSTUVWXYZ")
elif IN=="i":
    print("ABCDEFGHJKLMNOPQRSTUVWXYZ")
elif IN=="I":
    print("ABCDEFGHJKLMNOPQRSTUVWXYZ")       
elif IN=="j":
    print("ABCDEFGHIKLMNOPQRSTUVWXYZ")
elif IN=="J":
    print("ABCDEFGHIKLMNOPQRSTUVWXYZ")
elif IN=="k":
    print("ABCDEFGHIJLMNOPQRSTUVWXYZ")
elif IN=="K":
    print("ABCDEFGHIJLMNOPQRSTUVWXYZ")
elif IN=="l":
    print("ABCDEFGHIJKMNOPQRSTUVWXYZ")
elif IN=="L":
    print("ABCDEFGHIJKMNOPQRSTUVWXYZ")        
elif IN=="m":
    print("ABCDEFGHIJKLNOPQRSTUVWXYZ")
elif IN=="M":
    print("ABCDEFGHIJKLNOPQRSTUVWXYZ")
elif IN=="n":
    print("ABCDEFGHIJKLMOPQRSTUVWXYZ")
elif IN=="N":
    print("ABCDEFGHIJKLMOPQRSTUVWXYZ")
elif IN=="o":
    print("ABCDEFGHIJKLMNPQRSTUVWXYZ")
elif IN=="O":
    print("ABCDEFGHIJKLMNPQRSTUVWXYZ")
elif IN=="p":
    print("ABCDEFGHIJKLMNOQRSTUVWXYZ")
elif IN=="P":
    print("ABCDEFGHIJKLMNOQRSTUVWXYZ")
elif IN=="q":
    print("ABCDEFGHIJKLMNOPRSTUVWXYZ")
elif IN=="Q":
    print("ABCDEFGHIJKLMNOPRSTUVWXYZ")        
elif IN=="r":
    print("ABCDEFGHIJKLMNOPQSTUVWXYZ")
elif IN=="R":
    print("ABCDEFGHIJKLMNOPQSTUVWXYZ")
elif IN=="s":
    print("ABCDEFGHIJKLMNOPQRTUVWXYZ")
elif IN=="S":
    print("ABCDEFGHIJKLMNOPQRTUVWXYZ")
elif IN=="t":
    print("ABCDEFGHIJKLMNOPQRSUVWXYZ")
elif IN=="T":
    print("ABCDEFGHIJKLMNOPQRSUVWXYZ")
elif IN=="u":
    print("ABCDEFGHIJKLMNOPQRSTVWXYZ")
elif IN=="U":
    print("ABCDEFGHIJKLMNOPQRSTVWXYZ")
elif IN=="v":
    print("ABCDEFGHIJKLMNOPQRSTUWXYZ")
elif IN=="V":
    print("ABCDEFGHIJKLMNOPQRSTUWXYZ")       
elif IN=="w":
    print("ABCDEFGHIJKLMNOPQRSTUVXYZ")
elif IN=="W":
    print("ABCDEFGHIJKLMNOPQRSTUVXYZ")
elif IN=="x":
    print("ABCDEFGHIJKLMNOPQRSTUVWYZ")
elif IN=="X":
    print("ABCDEFGHIJKLMNOPQRSTUVWYZ")
elif IN=="y":
    print("ABCDEFGHIJKLMNOPQRSTUVWXZ")
elif IN=="Y":
    print("ABCDEFGHIJKLMNOPQRSTUVWXZ")
elif IN=="z":
    print("ABCDEFGHIJKLMNOPQRSTUVWXY")
elif IN=="Z":
    print("ABCDEFGHIJKLMNOPQRSTUVWXY")
else:
    print("One number at a time bud")

通过

我了解您可能在项目上进行了艰苦的工作,但可悲的是,我认为它可能过于简单,无法生成加密的文本。 正如您所说,您的代码当前正在执行的工作就是能够打印1位数字的加密。

可悲的是,我对python的了解有所减少,但是一个简单的google也许可以为您提供帮助,对此我进行了快速查找,希望对您有所帮助! http://www.dlitz.net/software/pycrypto/希望能对您有所帮助,它还为您提供了解密器。 如果需要的话

我从他们的文件中得到的

>>> from Crypto.Cipher import DES
>>> obj=DES.new('abcdefgh', DES.MODE_ECB)
>>> plain="Guido van Rossum is a space alien."
>>> len(plain)
34
>>> obj.encrypt(plain)
Traceback (innermost last):
  File "<stdin>", line 1, in ?
ValueError: Strings for DES must be a multiple of 8 in length
>>> ciph=obj.encrypt(plain+'XXXXXX')
>>> ciph
'\021,\343Nq\214DY\337T\342pA\372\255\311s\210\363,\300j\330\250\312\347\342I\3215w\03561\303dgb/\006'
>>> obj.decrypt(ciph)
'Guido van Rossum is a space alien.XXXXXX'

纯娱乐:

from string import ascii_uppercase

while True:
  print("Input letters you would like to encrypt")
  IN= input().upper()

  if IN.upper() in ascii_uppercase:
    print(ascii_uppercase.replace(IN, ''))

看来您正在尝试针对所提供的字母返回罗马字母的补码

有几种方法可以做到这一点:

from string import ascii_uppercase
def reduce_complement_alpha(letters):
    res = reduce(lambda letter: alphabet.replace(letter, ''), letters.upper(), ascii_uppercase)
    return res

def set_complement_letters(letters):
    res = ''.join(sorted(set(ascii_upper) - set(letters.upper())))
    return res

def filter_complement_letters(letters):
    res = ''.join(filter(lambda l: l not in letters.upper(), ascii_uppercase))
    return res

这些只是几个示例:)第一个功能具有O(n log n)时间复杂度,但实际上,由于您的n非常小,所以这无关紧要,而最后一个具有线性O(n)时间复杂度。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM