如何根据输入更改字典的值?

2024-06-03 04:10:04 发布

您现在位置:Python中文网/ 问答频道 /正文

初学者程序员在这里,我道歉- 这就是我要做的(插件板是一本字典):

for x in plugboard:
 
    plugboard[x] = plugboard[x+1]

然后打印新版本的插件板。因此,我试图将字典中每个键的值更改为它后面的键的值,但我不知道如何做到这一点。有什么帮助吗

(编辑)

plugboard = {
    'a':'a',
    'b':'b',
    'c':'c',
    'd':'d',
    'e':'e',
    'f':'f',
    'g':'g',
    'h':'h',
    'i':'i',
    'j':'j',
    'k':'k',
    'l':'l',
    'm':'m',
    'n':'n',
    'o':'o',
    'p':'p',
    'q':'q',
    'r':'r',
    's':'s',
    't':'t',
    'u':'u',
    'v':'v',
    'w':'w',
    'x':'x',
    'y':'y',
    'z':'z'
  }
  for x in plugboard:
    plugboard[x] = plugboard[x+1]
  print(plugboard) 

这实际上是整个计划——当然这是一个更大项目的一部分,但这是我遇到的最大问题


Tags: 项目in版本插件编辑for字典计划
1条回答
网友
1楼 · 发布于 2024-06-03 04:10:04

x+1将引发TypeError,因为x(字符串)和1(整数)不能相互连接。但是还有其他的方法,比如使用ord(c)chr(i),它们是彼此相反的

这是实现它的一种方法:

def char_after(char):
    if char == 'z': return 'a'
    return chr(ord(char)+1)

for x in plugboard:
    plugboard[x] = char_after(plugboard[x])

相关问题 更多 >