我刚开始使用Python并需要一些字典帮助。我希望根据带有字符串元素的列表输入将字符串添加到字典中:
实施例
x = {}
a = ['1', 'line', '56_09', '..xxx..']
现在说一个while循环来到这个列表了。我尝试使用以下代码添加到字典中:
if a[1] == 'line':
x[a[2]] = [a[-1]]
我希望字典能够阅读x = { '56_09': '..xxx..'}
,并希望通过打印来确认。我是否需要将列表中的元素调整为字符串,或者是否需要更改if语句?
答案 0 :(得分:2)
您的代码存在的一个问题是if
块:
if a[1] == 'line':
x[a[2]] = [a[-1]]
相反,它应该是这样的:
if a[1] == 'line':
x[a[2]] = a[-1]
您所做的是创建一个包含一个元素的列表:列表a
的最后一个元素。
答案 1 :(得分:0)
你可以使用ZIP和dict()
制作一个dict对象形成两个列表字典(拉链(列表1,列表2))。
我相信你的问题根据要求在输入列表中创建两个列表并使用上面的语法。
答案 2 :(得分:0)
我认为你需要这样的东西: -
def check(x,a):
if 'line' in a[1]:
x[a[2]] = a[-1]
return x
之后
check({},['1', 'line', '56_09', '..xxx..'])
答案 3 :(得分:0)
if a[1]=='line':
x={a[2]:a[-1]}
字典理解Create a dictionary with list comprehension in Python
{r:"test" for r in range(10)}