尝试用另一个字母替换字母表中的每个字母以打印完全不同的内容,例如:"python" 最终变成 "fhoeyd"
trying to replace every letter of the alphabet with another letter to print something completely different eg: "python" ends up to be "fhoeyd"
s = 'word'
t = s.replace('a','g')
t = s.replace('b','h')
t = s.replace('c','a')
t = s.replace('d','j')
t = s.replace('e','t')
t = s.replace('f','k')
t = s.replace('g','l')
t = s.replace('h','q')
t = s.replace('i','f')
t = s.replace('j','e')
t = s.replace('k','r')
t = s.replace('l','w')
t = s.replace('m','b')
t = s.replace('n','v')
t = s.replace('o','u')
t = s.replace('t','i')
t = s.replace('q','t')
t = s.replace('r','c')
t = s.replace('s','n')
t = s.replace('t','m')
t = s.replace('u','z')
t = s.replace('v','x')
t = s.replace('w','y')
t = s.replace('x','o')
t = s.replace('y','s')
t = s.replace('z','d')
print(t)
如果此代码包含用于替换单词中不存在的字母的字母,则此代码不起作用,我无法找到使其工作的方法我知道原因只是不知道如何修复它我是 python 的新手,如果谁能帮忙就太好了
你可以这样试试,
import string
import random
letters = list(string.ascii_lowercase)
word = "python"
for letter in word:
word = word.replace(letter, random.choice(letters))
word
输出-
zufmqr
因为这段代码会随机替换一个字母,所以每次你的输出都会不同。要获得一致的输出,请使用 random.seed()
设置种子并在其中传递您选择的任意数量。
您可以通过多种方式完成。
1。转换 ASCII 中的每个字符加上一个数字并将结果转换为字符,但您可能会以一些特殊字符结尾,例如“#@$%^?”
letter = chr(ord(ch) + 6)
我得到字符 ch
将其转换为等效的 ASCII,加 6 并使用 chr()
将结果转换为字符串
input_string = input("input a string: ")
result = []
for ch in input_string:
new_ch = chr(ord(ch) + 6)
result.append(new_ch)
print("".join(result))
2。使用随机和字符串库。
import string
import random
characters = string.ascii_lowercase
string = input("input a sentece: ")
result = []
for ch in string:
letter = random.choice(characters)
result.append(letter)
print("".join(result))
我建议选择第二个选项,因为如果要将其用于密码生成器,请提供一些随机元素。
我用过这个:
list_A = ['w','o','r','l','d']
list_B = ['y','u','c','w','j']
string = 'world'
string_fin = ''
for s in string:
for i, j in zip (list_A, list_B):
if s == i:
string_fin += j
print(string_fin)
s = 'word'
t = s.replace('a','g')
t = s.replace('b','h')
t = s.replace('c','a')
t = s.replace('d','j')
t = s.replace('e','t')
t = s.replace('f','k')
t = s.replace('g','l')
t = s.replace('h','q')
t = s.replace('i','f')
t = s.replace('j','e')
t = s.replace('k','r')
t = s.replace('l','w')
t = s.replace('m','b')
t = s.replace('n','v')
t = s.replace('o','u')
t = s.replace('t','i')
t = s.replace('q','t')
t = s.replace('r','c')
t = s.replace('s','n')
t = s.replace('t','m')
t = s.replace('u','z')
t = s.replace('v','x')
t = s.replace('w','y')
t = s.replace('x','o')
t = s.replace('y','s')
t = s.replace('z','d')
print(t)
如果此代码包含用于替换单词中不存在的字母的字母,则此代码不起作用,我无法找到使其工作的方法我知道原因只是不知道如何修复它我是 python 的新手,如果谁能帮忙就太好了
你可以这样试试,
import string
import random
letters = list(string.ascii_lowercase)
word = "python"
for letter in word:
word = word.replace(letter, random.choice(letters))
word
输出-
zufmqr
因为这段代码会随机替换一个字母,所以每次你的输出都会不同。要获得一致的输出,请使用 random.seed()
设置种子并在其中传递您选择的任意数量。
您可以通过多种方式完成。
1。转换 ASCII 中的每个字符加上一个数字并将结果转换为字符,但您可能会以一些特殊字符结尾,例如“#@$%^?”
letter = chr(ord(ch) + 6)
我得到字符 ch
将其转换为等效的 ASCII,加 6 并使用 chr()
将结果转换为字符串
input_string = input("input a string: ")
result = []
for ch in input_string:
new_ch = chr(ord(ch) + 6)
result.append(new_ch)
print("".join(result))
2。使用随机和字符串库。
import string
import random
characters = string.ascii_lowercase
string = input("input a sentece: ")
result = []
for ch in string:
letter = random.choice(characters)
result.append(letter)
print("".join(result))
我建议选择第二个选项,因为如果要将其用于密码生成器,请提供一些随机元素。
我用过这个:
list_A = ['w','o','r','l','d']
list_B = ['y','u','c','w','j']
string = 'world'
string_fin = ''
for s in string:
for i, j in zip (list_A, list_B):
if s == i:
string_fin += j
print(string_fin)