这方面的一个例子是“walk”这个词,它会产生一个候选集['awlk','wlak','wakl']。
这就是我目前的情况:
def main():
word = "jack"
wordL = len(word)
listS = []
for i in range((wordL)-1):
current = word[i+1]
word[i+1] = word[i]
word[i] = current
listS.append(word)
print (listS)
main()
我使用“jack”这个词作为测试,应该产生一组候选词。但是,这似乎不起作用。我是python的新手,非常感谢我能得到的任何帮助。
答案 0 :(得分:2)
由于字符串是不可变的,因此无法更改字符串对象中的字符。要实现您的目标,您可以将字符串更改为列表,在列表中执行任何操作,然后将列表转换回字符串。
word = list("jack") # String is converted to list
wordL = len(word)
listS = []
for i in range((wordL)-1):
current = word[i+1]
word[i+1] = word[i]
word[i] = current
listS.append("".join(word)) # list is converted to string and appended.
print (listS)
输出:
['ajck', 'acjk', 'ackj']