以下是我要做的事情:
假设已经提供给我的数据集:
dictionary = {'products': [{'a': '1', 'b': '2', 'c': '3', 'd': '4', [...]}
我可以在字典中获取数字值,如下所示: 字典[ '产品'] [0] [“风格]
我正在尝试将'products'存储在变量中,将第二个键(a,b,c,d等)存储在另一个变量中。
x = (dictionary.keys())
x = "'"+x[0]+"'"
keys = dictionary['products'][0].keys()
我的最终目标是:
for i in xrange(number_of_products - 1):
for j in xrange(len(keys) - 1):
values[i][j] = dictionary[x][i][keys[j]] ##ERROR Here when I try to index using key[j]
答案 0 :(得分:3)
repr()
会将字符串转换为其引用的表示形式。
x = 'products'
print repr(x)
这将正确处理包含单引号的x
。
答案 1 :(得分:0)
怎么样?
>>> x = '\''+x+'\''
>>> print x
'products'
类似地,
>>> x = "'"+x+"'"
>>> print x
'products'
答案 2 :(得分:0)
尝试:
In [4]: x = "products"
In [5]: print "'%s'" % x
'products'
答案 3 :(得分:0)
你可以使用三重引号,不需要使用转义字符..一组三重引号内的任何内容都被视为字符串
>>> x="""'products'"""
>>> print x
'products'
答案 4 :(得分:0)
您的代码版本如下所示:
for i in range(len(dictionary['products'])):
for j in dictionary['products'][i]:
values[i][j] = dictionary['products'][i][j]
然而,更短的版本是:
values = dictionary['products']