Python 字符串可以';不能通过'扩展;加上';

Python 字符串可以';不能通过'扩展;加上';,python,string,python-3.x,Python,String,Python 3.x,我有一个简单的问题。请看下面的脚本: def myFunc(string): res='' for i in string: if not i in res: res+i return res res=myFunc('aaaa') print(res) # return a string 'a' 此脚本应该能够删除输入字符串中的重复字符 但事实上,我什么也没有得到。“res”为空 你有什么想法吗 谢谢

我有一个简单的问题。请看下面的脚本:

def myFunc(string):
    res=''
    for i in string:
        if not i in res:
            res+i
    return res
res=myFunc('aaaa')
print(res)               # return a string 'a'
此脚本应该能够删除输入字符串中的重复字符

但事实上,我什么也没有得到。“res”为空

你有什么想法吗


谢谢

res+i
未将其结果设置为变量。您需要将其添加回字符串

res = res + i

问题是你没有安排任务。在我做的地方检查我的代码
res=res+I

def myFunc(string):
    res=''
    for i in string:
        if not i in res:
            res = res+i
    return res

res=myFunc('aaaa')
print(res)               # return a string 'a'

这是因为我不能在原来的位置更改字符串吗?所以我必须给它起个新名字?它不像list.append(),对吗?@Harry-字符串是不可变的,但更多的是关于
+
操作符的工作原理。在大多数情况下,它并不打算修改左手操作器的手柄!这是因为我不能在原来的位置更改字符串吗?所以我必须给它起个新名字?它不像list.append(),对吗?append()函数的目的是将项目添加到列表的末尾
+
只是表示串联,因此您必须在其中定义要存储此串联的位置。您应该指定res值。res=res+i,否则您将添加值,但不会将其存储回去。