我在我的python程序中遇到问题。在这个程序中,用户输入一个字符串,然后程序调用一个函数从unicode的信到最近的ASCII符号转换(例如秒 - > S 0 - > 0等),但我得到 TypeError: 'str' object does not support item assignment
TypeError:'str'对象不支持项目分配
代码:
__author__ = 'neo'
ceviri = {
'ş':'s','Ş':'S',
'ğ':'g','Ğ':'G',
'ı':'i','İ':'I',
'ü':'u','Ü':'U',
'ö':'o','Ö':'O'
}
def karakterDegistir(x):
p = x[:]
y = sorted(ceviri.keys())
u = 0
while u < len(y):
if p[u] in y:
p[u] = ceviri[p[u]]
u = u + 1
return p
print(karakterDegistir('şeker'))
Python不允许你修改一个字符串。你需要用翻译建立一个新的字符串,并返回它。 – Barmar
可能的重复[如何在Python中修改字符串中的单个字符?](http://stackoverflow.com/questions/3861026/how-do-i-modify-a-single-character-in-a -string-in-python) –