编写一个读取单词并打印所有子串的程序,按长度排序

时间:2016-02-26 01:24:05

标签: python

就像问题一样......我是Python的新手。

我们不允许使用切片功能。

input = input("Please enter word here: ")
length = len(input)
x = 0
y = 0

for x in input:
    print(x)
    for y in input:
        print(x+y)

我知道它不起作用。这是我最大的努力。有人可以帮帮我吗?保持它比我已经拥有的代码相对简单?非常感谢你。

例如,如果用户提供输入" tom",程序将打印

"t"
"o"
"m"
"to"
"om"
"tom"

3 个答案:

答案 0 :(得分:0)

这是你要找的东西(没有切片或索引):

die1, die2 = RollTwoDice()

输出:

input = 'abcdef'
length = len(input)

for i in range(length):
    s = [input[c] for c in range(i,length)]
    output = ''
    for j in range(length-i):
        output += s.pop(0)
        print output

快速,更优雅/更加高效,更有效的方法可以实现相同的结果:快速列表理解:

a
ab
abc
abcd
abcde
abcdef
b
bc
bcd
bcde
bcdef
c
cd
cde
cdef
d
de
def
e
ef
f

答案 1 :(得分:0)

$(document).ready(function () {
    $('#update-button').click(function () {
      haw the call sql from here plz ??????       $('#days').val();
    });
});

您可以使用组合模块。

输出;

from itertools import combinations

user = input ("Please enter word here: ")

d = []
y = 1

while y != len(user)+1:
    for x in combinations(user,y):
        d.append(x)
    y += 1

print (d)

答案 2 :(得分:0)

我会给你一个提示: 一个变量" first_lettre_of_substring" 一个变量" length_of_substring" 没有任何切片(基本上使用一些for循环),你可以想出各种可能性。

祝你好运