如何将短语打印为随机生成的数字?



代码:

import string, random
import pandas as pd
#User Input
title = input("Please Enter A Title For This Puzzle: ")
if len(title) == 0:
print("String is empty")
quit()
phrase = input("Please Enter A Phrase To Be Encoded: ")
if len(phrase) == 0:
print("String is empty")
quit()

#Numbers get assigned to the letters
nums = random.sample(range(1, 27), 26)
code = dict(zip(nums, string.ascii_lowercase))
#'Start' of Puzzle for the user  
print ("The Title Of This Puzzle Is", title)

#Code for Grid

code2 = {'Number': [[nums[0]],[nums[1]],[nums[2]],[nums[3]],[nums[4]],[nums[5]],[nums[6]],[nums[7]],[nums[8]],[nums[9]],[nums[10]],[nums[11]],[nums[12]],[nums[13]],[nums[14]],[nums[15]],[nums[16]],[nums[17]],[nums[18]],[nums[19]],[nums[20]],[nums[21]],[nums[22]],[nums[23]],[nums[24]],[nums[25]]],
'Letter': list(string.ascii_lowercase),
}


df = pd.DataFrame(code2, columns = ['Number', 'Letter'])
print (df)

我目前正在尝试做的是将已输入的短语吐出随机生成的数字,而是在 #Numbers"分配给信件"注释下。
例如:你好 = 20-1-16-16-19

我已经尝试过了,但是我编写的代码是无稽之谈,需要一些外部帮助

谢谢

如果我理解正确,您正在寻找的就是这样的东西吗?

翻转数字位置

code = dict(zip(string.ascii_lowercase, nums))
code.update({" ":0})
HELLO = [code[item] for item in "hello"]

这可能不是最佳解决方案,但它有效。希望对您有所帮助。

def encode(phrase):     #Takes a phrase and returns the encoded result
result = []
for char in phrase:
result.append(str(code_dict[char.lower()]))
return '-'.join(result)
nums = random.sample(range(1, 27), 26)  #Creating lists of the random number and letters
letters = list(string.ascii_lowercase)
code_dict = {}
for i in range(len(letters)):    #Creating a dict relating the letters to a number
key = letters[i]
value = nums[i]
code_dict[key] = value
encode(phrase)    #Encoding the phrase

最新更新