我如何从用户列表中获取大量输入作为python中的列表

时间:2019-07-12 18:39:12

标签: python-3.x input split

我想创建一个脚本,该脚本可以根据用户的需要连续获取很多输入,然后创建其中的一些列表。

我的第一个想法是创建一个唯一的输入列表,然后将子列表拆分为列表总数。还是有做空的方法?

我已经尝试过了,但是我无法将输入分成列表 keys = list() while True: line = input('Enter words: ').rstrip().lower() if line == 'done' or line == 'Done': break keys.append(line) input_list = keys.split(',')

结果是列表中的列表 keys = ['a,b,c,d', 'z,x,w', 'value_n, value_n+1, value_n+n']

但是输出必须是: list_1 = ['a', 'b', 'c', 'd'] list_2 = ['z', 'x', 'w'] list_n = ['value_n', 'value_n+1', 'value_n+n']

2 个答案:

答案 0 :(得分:0)

您可以执行input('Enter words: ').rstrip().lower().split(',')并让用户仅用逗号分隔值,或者使input('Enter words: ').rstrip().lower().split(', ')并让用户用逗号和空格分隔值。

[w.lstrip() for w in input('Enter words: ').rstrip().lower().split(',')]接受两种类型的条目。

答案 1 :(得分:0)

尝试一下,您的代码就可以了。只需更改最后一行,您将获得列表列表。

input_list = [i.split(',') for i in keys]

# output:
# [['a', 'b', 'c', 'd'], ['z', 'x', 'w'], ['value_n', ' value_n+1', ' value_n+n']]

如果这不是您想要的,请在下面评论。