将多个输入迭代连接成一个字符串
问题描述:
道歉,如果这已被问到,但我发现类似的问题没有完全回答我的问题。将多个输入迭代连接成一个字符串
我知道如何采取一个单一的输入,并将其转换为字符串,或任何硬编码。我想要做的是接受多个输入并将它们转换为单个字符串。
实施例:
Enter a letter: h
Enter a letter: e
Enter a letter: l
Enter a letter: l
Enter a letter: o
...等等,但是需要多长时间,直到用户输入 's' 指实例。
Enter a letter: s
然后程序将所有先前的迭代打印为单个字符串。
Result: hello
如何拼凑单独的,可能无限的输入字符串?
答
假设你的投入导致列表(或任何其他可迭代)字符(或字符串),因为你会从获得,例如:
mylist = []
while True:
c = raw_input("Enter a letter:")
if c == "s":
break
mylist.append(c)
,那么你可以简单地join()
他们:
result = "".join(mylist)
答
''.join(iter(lambda: raw_input('Enter a letter: '), 's'))
答
my_list = []
while len(my_list) == 0 or my_list[-1] != 's':
my_list.append(raw_input("Enter a letter: "))
print ''.join(my_list[:-1])
你使用'str.join' – mgilson 2013-04-04 13:01:24