来自字符串
t = "abcde"
我想在输出中打印一个像
这样的列表1.abcd
2.abc
3.ab
4.a
答案 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))