一次删除一个单词的字母

时间:2014-06-19 11:50:23

标签: python

来自字符串

t = "abcde"

我想在输出中打印一个像

这样的列表
1.abcd

2.abc

3.ab

4.a

3 个答案:

答案 0 :(得分:2)

t = "abcde"
for i in range(len(t)-1,0,-1): #where i is each item in the list from the size of the string, less 1, to zero
  print t[0:i] # print from start of string until i

答案 1 :(得分:-1)

试试这个:

for index, letter in enumerate(string[:-1]):
    print index + 1, string[:-index - 1]

这应该对你有所帮助!您可能需要根据需要对其进行修改。

答案 2 :(得分:-2)

一种方法是在循环的每次迭代中简单地修剪字符串的最后一个字符,直到没有字符为止。您可以使用字符串切片来获取t的子字符串,例如t[:4]给出t的前四个字符。更重要的是,t[:-1]除了最后 carachter t之外的所有内容,这就是你想要的。您可以使用len(t)检查t中的字符数,并使用while循环进行迭代,直到没有剩余字符为止。

t = "abcde"
while len(t) > 0:
    t = t[:-1]
    if len(t) > 0:
        print t

只是为了踢,您也可以使用join生成器语句在单行中执行此操作:

print "\n".join(t[:-i] for i in xrange(1,5))