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

Python 如何根据输入更改字典的值?,python,dictionary,for-loop,key-value,Python,Dictionary,For Loop,Key Value,初学者程序员在这里,我道歉- 这就是我要做的(插件板是一本字典): 然后打印新版本的插件板。因此,我试图将字典中每个键的值更改为它后面的键的值,但我不知道如何做到这一点。有什么帮助吗 (编辑) 这实际上就是整个程序——当然这是一个更大项目的一部分,但这是我遇到的最大问题。x+1将引发TypeError,因为x(字符串)和1(整数)不能相互连接。但是还有其他的方法,比如使用和,它们是相反的 这是实现它的一种方法: def char_after(char): if char == 'z':

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

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

(编辑)


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

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

这是实现它的一种方法:

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

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

对于最后一个不在dict中的
x+1
,应该发生什么?是
x
和整数吗?向我们展示
plugboard
的内容,并解释您正在尝试做什么。您正在运行哪一版本的Python?
'a'+1
实际上没有任何意义-如果您在火车上走到一个陌生人面前,问他“一加c是什么?”他们会认为您疯了。Python也认为你疯了。您需要将这些字母转换为数字,然后您仍然需要决定如何处理
z
。可能是使用了
%
模运算符的内容。尝试在网站上搜索
[python]ceaar cypher
以获取一些想法。这是一个我绝对没有想到的非常好的想法-我会尝试一下,如果有任何问题,会回来的,谢谢大家
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) 
def char_after(char):
    if char == 'z': return 'a'
    return chr(ord(char)+1)

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