替换Python中的单词?
我试图用字母alpha替换键中的字母(反之亦然): 我试图将一个字符串改为编码(反之亦然),所以说“Hello”将变成“LTZZE”。你知道怎么做吗?这是我当前的代码:替换Python中的单词?,python,string,decode,encode,Python,String,Decode,Encode,我试图用字母alpha替换键中的字母(反之亦然): 我试图将一个字符串改为编码(反之亦然),所以说“Hello”将变成“LTZZE”。你知道怎么做吗?这是我当前的代码: usrInput = 0 alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" key = "XPMGTDHLYONZBWEARKJUFSCIQV" def menu(): print "SECRET DECODER MENU" print "" print "1) Quit"
usrInput = 0
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
key = "XPMGTDHLYONZBWEARKJUFSCIQV"
def menu():
print "SECRET DECODER MENU"
print ""
print "1) Quit"
print "2) Encode"
print "3) Decode"
usrInput = raw_input("What would you like to do?")
return usrInput
def encodeWord():
plain = plain.upper()
length = len(plain)
encode = plain.encode(alpha, key)
return encode
def decodeWord():
coded = coded.upper()
length = len(coded)
decode = coded.decode(key, alpha)
return decode
def main():
keepGoing = True
while keepGoing:
usrInput = menu()
if usrInput == "2":
plain = raw_input("Text you want to be encoded: ")
encodeWord()
print encode(plain)
elif usrInput == "3":
coded = raw_input("Code you need to be decyphered: ")
decodeWord()
print decode(coded)
elif usrInput == "1":
print "Thanks for doing super secret spy stuff with me. No one seems to want to anymore. Goodbye. ):"
keepGoing = False
else:
print "I don't know what to do! Ahhh!"
main()
使用和。如果使用Python2,则此函数位于string
(和)中
示例(python 3):
示例(python 2)
输出:
LTZZE
注:这是计算机科学课的家庭作业。我创建了分配,我知道它在堆栈溢出上。如果你把它作为自己的作品交上来,我会知道的。你的作业将获得零分,我们将开始学术不端行为诉讼 (如果你在家里玩,这确实是一个字符串操作分配,显然不被认为是一个好的加密实践。我们也不允许maketrans()用于此分配,因为这是一个字符串操作和函数练习,适合初学者。)
如果你真的非常需要帮助,来找我或者我们付钱来帮助你的一位朗诵指导老师 我希望这只是一个有趣的练习或学习字符串操作。因为如果不是的话,那么使用它的人就有大麻烦了,因为一对一的替换密码可以用笔和纸破解(还有相当多的数学运算)。@J0HN别担心,这只是一个字符串操作练习@用户1775603哦,是的。我现在添加了python 2。
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
key = "XPMGTDHLYONZBWEARKJUFSCIQV"
enc = str.maketrans(alpha, key)
usrInput = 'HELLO'
print(usrInput.translate(enc))
import string
alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
key = "XPMGTDHLYONZBWEARKJUFSCIQV"
enc = string.maketrans(alpha, key)
inp = 'HELLO'
print string.translate(inp, enc)
LTZZE