将可变长度列表转换为多个列表

时间:2018-03-22 00:24:08

标签: python string list

我正在编写一个脚本,用户输入多个字符,我想将每个字符放入自己的列表中然后进行操作。

input = AVI

输出:

A = ['A'] V = ['V'] I = ['I']

我能够把它变成这样的单个列表:['A','V','I']但是这对于我以后要做的事情来说太混乱了。

3 个答案:

答案 0 :(得分:7)

考虑将dictenumerate一起使用。现在,您甚至可以按位置检索您的信件。

x = input('Input a string:\n')
# User inputs 'AVI'

d = dict(enumerate(x))
# {0: 'A', 1: 'V', 2: 'I'}

我很难看到当用户输入字符串时你如何知道要访问哪些字母,所以在命名你的变量(或者,这里,键)之后没有意义信件本身。

答案 1 :(得分:3)

如果你真的希望拥有一个以自身命名的变量,那么使用mapping

>>> s='AVI'
>>> {e:e for e in s}
{'A': 'A', 'I': 'I', 'V': 'V'}

然后像这样访问它:

>>> di={e:e for e in s}
>>> di['A']
'A'

或者,枚举索引(感谢jpp):

>>> {n:e for n,e in enumerate(s)}
{0: 'A', 1: 'V', 2: 'I'}

答案 2 :(得分:0)

我认为你需要使用for循环和for write if-else条件 并且要将任何你想要的字符插入到列表中,请使用appned()方法。