如何使用python划分列表的两个元素

时间:2017-09-19 00:16:12

标签: python

我有python代码如下。 jv_list是从D.B.的结果集检索中填充的。查询。

jv_list = list(result.get_points())
print(jv_list)

我正在打印jv_list,它给了我下面提到的输出。

[{u'in': u'19834', u'length-bytes': u'79923888', u'run-time': u'1h50m43.489993955s', u'time': u'2017-09-08T21:20:39.846582783Z'}]

如何获得实际上第二个值除以第一个值的除法结果。对于。 i.e. 79923888/ 19834

5 个答案:

答案 0 :(得分:4)

尝试这一系列命令

>>> X = [{u'in': u'19834', u'length-bytes': u'79923888', u'run-time': u'1h50m43.489993955s', u'time': u'2017-09-08T21:20:39.846582783Z'}]
>>> for x in X:
...     x['answer'] = float(x['length-bytes'])/float(x['in'])
...
>>> X
[{'in': '19834', 'length-bytes': '79923888', 'run-time': '1h50m43.489993955s', 'time': '2017-09-08T21:20:39.846582783Z', 'answer': 4029.64041544822}]

答案 1 :(得分:2)

如果这是你的意思

x = [{u'in': u'19834', u'length-bytes': u'79923888', u'run-time': u'1h50m43.489993955s', u'time': u'2017-09-08T21:20:39.846582783Z'}]
for i in x:
    print(float(i['length-bytes'])/float(i['in']))

结果为

4029.64041544822

答案 2 :(得分:1)

你无法可靠地做到这一点,词典是无序的 使用此数据结构,您需要通过其键来解决元素。

对于您想要彼此分开的每对元素,jv_list[0]['length_bytes'] / jv_list[0]['in']

答案 3 :(得分:1)

如果您想要length-bytes / in的结果,可以使用这些键并检索它们的值:

jv_list = [{u'in': u'19834', u'length-bytes': u'79923888', u'run-time': u'1h50m43.489993955s', u'time': u'2017-09-08T21:20:39.846582783Z'}]

result = float(jv_list[0]['length-bytes']) / float(jv_list[0]['in'])
print(result) # => 4029.64041544822

答案 4 :(得分:1)

根据您的数据结构,这似乎就是答案。

float(jv_list[0]['length-bytes']) / float(jv_list[0]['in'])