Python-在字符串上循环
如何循环用户可以输入的单词,如下面python中的示例 输入一个单词:python(用户可以输入任何单词) p 派克 派特 皮思 蟒蛇 蟒蛇Python-在字符串上循环,python,grok,Python,Grok,如何循环用户可以输入的单词,如下面python中的示例 输入一个单词:python(用户可以输入任何单词) p 派克 派特 皮思 蟒蛇 蟒蛇 (然后循环用户输入的单词)这里有一种方法,使用Python 3(1): 它使用input() 然后,它将i变量从1迭代到字符串长度(包括),每次都在字符串开头打印出那么多字符 一旦您更加熟练地掌握Python的简洁性潜力,您就可以用如下内容替换for循环: print(*[s[:i] for i in range(1,len(s)+1)],sep='\n
(然后循环用户输入的单词)这里有一种方法,使用Python 3(1): 它使用
input()
然后,它将i
变量从1
迭代到字符串长度(包括),每次都在字符串开头打印出那么多字符
一旦您更加熟练地掌握Python的简洁性潜力,您就可以用如下内容替换for
循环:
print(*[s[:i] for i in range(1,len(s)+1)],sep='\n')
或:
但您可能会发现可读的解决方案仍然是最好的:-)
(1) 如果由于某种原因而无法使用Python 2,请记住使用raw_input()
并从print
行中删除括号。可能有更好的方法,但这是最简单的:
string = 'python'
for index in range(1, len(string)):
print(string[:index])
这里还有两种方法
功能性:
#!/usr/bin/env python3
in_word = input("Enter a word: ")
print("\n".join(\
map(lambda x:in_word[:x], range(1,len(in_word)+1)) \
))
使用递归:
#!/usr/bin/env python3
in_word = input("Enter a word: ")
def print_word_recurse(word):
if(not word): return
print_word_recurse(word[:-1])
print(word)
print_word_recurse(in_word)
你尝试过什么?你在哪里失败了?
#!/usr/bin/env python3
in_word = input("Enter a word: ")
print("\n".join(\
map(lambda x:in_word[:x], range(1,len(in_word)+1)) \
))
#!/usr/bin/env python3
in_word = input("Enter a word: ")
def print_word_recurse(word):
if(not word): return
print_word_recurse(word[:-1])
print(word)
print_word_recurse(in_word)