如何为字符串中的每个字符分配键?

时间:2017-04-05 16:02:43

标签: python string dictionary

这就是我被告知要做的事情,"写一个python grogram,询问用户一个字符串,然后创建以下字典:值是字符串中的字母,相应的键是地方在字符串中。例如,如果用户输入字符串“CSC120”,则创建字典D. D = {'C':0,'S':1,'C':2,'1':3,'2':4,'0':5}"

到目前为止,这是我的代码:

usr = input('enter string here')
result = ''
for ch in usr:
    result = result + ch + ' '
print(result[:-1]) #value

key = 0
while (key < len(usr)):
    key = key +1    #key
print(key)

dict = {key: result}
print(dict)

这是输出:     在这里输入字符串csc120

c s c 1 2 0

6

{6: 'c s c 1 2 0 }

这是来自在线教程,因此我无法向教授寻求帮助,而且我是python /编程的新手,并感谢我能得到的所有帮助!

我只是不明白如何将键分配给字符串中的每个字符,使其看起来像这样: D = {&#39; C&#39;:0,&#39; S&#39;:1等...}

1 个答案:

答案 0 :(得分:0)

你可以使用enumerate()用索引迭代每个字母,然后从中创建一个字典:

In [1]: s = "CSC120"
In [2]: dict(enumerate(s))
Out[2]: {0: 'C', 1: 'S', 2: 'C', 3: '1', 4: '2', 5: '0'}

(这是一个字典,其中值是字符串中的字母,相应的键是字符串中的位置 - 你的例子反过来了)