在循环中的每个字符后面插入一个句点



假设我有一个字符串tex = "somestring"

我需要创建一个循环,创建该字符串的多个副本,每个副本在一个字符后添加一个句点,从第一个字符开始,到最后一个结束

类似的东西

for i in range (1, len(tex)-2):
tex = ....
print(tex)

输出需要为:

s.omestring
so.mestring
som.estring
...
somestrin.g

我试着在其他问题中使用tex = '.'.join(tex[i+1] for i in range (1, len(tex)-2, 1)),但它只在每个字符后面添加一个句点一次,结果是s.o.m.e.s.r.I.n.g

也许将字符串拆分为一个字符列表会有所帮助,但我不确定如何从这种方式处理它。

只需使用此-

for i in range (1, len(tex)):
print(tex[:i]+"."+tex[i:])

这里有一个可能的单行解决方案:

s = 'somestring'
print(*(s[:i] + '.' + s[i:] for i in range(1, len(s))), sep='n')

输出:

s.omestring
so.mestring
som.estring
some.string
somes.tring
somest.ring
somestr.ing
somestri.ng
somestrin.g
text = "something"
for char in range(1, len(text)):
print(text[:char] + "." + text[char:])

希望我能帮上忙!

最新更新