我如何循环连接

How can I loop through a concatenation

我正在尝试用“.”拆分单词然而,在我成功完成每个字母之后,我的下一步是再次拆分当前拆分的单词,但我不想重复变化。

我的预期输出是这样的:

输入单词:amaxa 第一个循环将给出 - a.maxa, am.axa, ama.xa, amax.a

那么下一次拆分应该给出 - a.m.axa, a.ma.xa,a.max.a,

本质上,我想要带有“.”的单词的不同变体。然而,当一个完整的循环用完时被添加,我的主要问题是我有 '.'s 出现在彼此旁边,我尝试使用 continue 语句但它没有用。下面是我的源代码

print("enter email without @gmail.com")

word = input("word: ")


lenofword = len(word) - 1

for i in range(0,lenofword):
    sliceword = word[:1+i] + "." + word[1+i:]
    lis.append(sliceword)

print(sliceword)

for j in range(0,lenofword):
    slices = sliceword[:1+j] + "." + sliceword[j+1:]

    if slices[i:] == slices[:]:
        continue
    print(slices)
    

给出的输出:

enter email without @gmail.com
word: amax
a.max
am.ax
a.m.ax
am..ax
am..ax
ama.x
a.ma.x
am.a.x
ama..x

基本上我想去掉 'am..ax' 和 'ama..x'

更容易选择应该放置点的两个位置(对于单个点的情况可能是相同的位置)。例如:

for i in range(1, lenofword + 1):
    for j in range(i, lenofword + 1):
        sliced = ".".join(filter(None, [word[:i], word[i:j], word[j:]]))
        print(sliced)

这将为输入词 "amax" 打印以下内容:

a.max
a.m.ax
a.ma.x
am.ax
am.a.x
ama.x