Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将嵌套列表中的所有值除以255?_Python_Python 3.x_List - Fatal编程技术网

Python 如何将嵌套列表中的所有值除以255?

Python 如何将嵌套列表中的所有值除以255?,python,python-3.x,list,Python,Python 3.x,List,我有一个嵌套列表我的列表: [ [255, 102, 0, 1.0], [255, 102, 0, 1.0], [255, 102, 0, 1.0], [95, 202, 190, 1.0] ] 我想将其中的所有值除以255。我怎样才能得到这个新的嵌套子列表,它的值除以255?可能有更好的方法,但我会像这样快速完成 >>> ll = [[255, 102, 0, 1.0], ... [255, 102, 0, 1.0], ... [255, 102, 0, 1.0],

我有一个嵌套列表我的列表:

[
[255, 102, 0, 1.0],
[255, 102, 0, 1.0],
[255, 102, 0, 1.0],
[95, 202, 190, 1.0]
]

我想将其中的所有值除以255。我怎样才能得到这个新的嵌套子列表,它的值除以255?

可能有更好的方法,但我会像这样快速完成

>>> ll = [[255, 102, 0, 1.0],
...   [255, 102, 0, 1.0],
...   [255, 102, 0, 1.0],
...   [95, 202, 190, 1.0]]
>>> res = []
>>> for x in ll:
...   inner = []
...   for z in x:
...     inner.append(z/255)
...   res.append(inner)
>>> pprint(res)
[[1.0, 0.4, 0.0, 0.00392156862745098],
 [1.0, 0.4, 0.0, 0.00392156862745098],
 [1.0, 0.4, 0.0, 0.00392156862745098],
 [0.37254901960784315,
  0.792156862745098,
  0.7450980392156863,
  0.00392156862745098]]

仅当只有一级嵌套列表时,此选项才有效。如果您需要支持更深层次的结构,我会尝试使用递归函数来解决这个问题。

可能有更好的方法,但我会像这样快速完成

>>> ll = [[255, 102, 0, 1.0],
...   [255, 102, 0, 1.0],
...   [255, 102, 0, 1.0],
...   [95, 202, 190, 1.0]]
>>> res = []
>>> for x in ll:
...   inner = []
...   for z in x:
...     inner.append(z/255)
...   res.append(inner)
>>> pprint(res)
[[1.0, 0.4, 0.0, 0.00392156862745098],
 [1.0, 0.4, 0.0, 0.00392156862745098],
 [1.0, 0.4, 0.0, 0.00392156862745098],
 [0.37254901960784315,
  0.792156862745098,
  0.7450980392156863,
  0.00392156862745098]]

仅当只有一级嵌套列表时,此选项才有效。如果您需要支持更深层次的结构,我会尝试使用递归函数来解决这个问题。

我认为最好的方法是使用
numpy

import numpy as np

data = [[255, 102, 0, 1.0],
        [255, 102, 0, 1.0],
        [255, 102, 0, 1.0],
        [95, 202, 190, 1.0]]

out = list(np.divide(data, 255)) 
print(out)
输出

[[1.0, 0.4, 0.0, 0.00392156862745098],
[1.0, 0.4, 0.0, 0.00392156862745098],
[1.0, 0.4, 0.0, 0.00392156862745098],
[0.37254901960784315, 0.792156862745098, 0.7450980392156863, 0.00392156862745098]]

我认为最好的办法是使用
numpy

import numpy as np

data = [[255, 102, 0, 1.0],
        [255, 102, 0, 1.0],
        [255, 102, 0, 1.0],
        [95, 202, 190, 1.0]]

out = list(np.divide(data, 255)) 
print(out)
输出

[[1.0, 0.4, 0.0, 0.00392156862745098],
[1.0, 0.4, 0.0, 0.00392156862745098],
[1.0, 0.4, 0.0, 0.00392156862745098],
[0.37254901960784315, 0.792156862745098, 0.7450980392156863, 0.00392156862745098]]
使用列表理解

ll = [[255, 102, 0, 1.0],
  [255, 102, 0, 1.0],
  [255, 102, 0, 1.0],
  [95, 202, 190, 1.0]]
ll = [[x/255 for x in l] for l in ll]
使用列表理解

ll = [[255, 102, 0, 1.0],
  [255, 102, 0, 1.0],
  [255, 102, 0, 1.0],
  [95, 202, 190, 1.0]]
ll = [[x/255 for x in l] for l in ll]

建议使用列表理解。请浏览、和以了解此网站的工作原理,并帮助您改进当前和未来的问题,这可以帮助您获得更好的答案。“演示如何解决此编码问题?”与堆栈溢出无关。您必须诚实地尝试解决方案,然后询问有关实现的特定问题。Stack Overflow无意取代现有教程和文档。建议使用列表理解。请浏览、和,了解此网站的工作原理,并帮助您改进当前和将来的问题,这可以帮助您获得更好的答案。“演示如何解决此编码问题?”与堆栈溢出无关。您必须诚实地尝试解决方案,然后询问有关实现的特定问题。堆栈溢出不是为了替换现有的教程和文档。它将带来数组([[1.0,0.4,0.0,0.003921568725098],[1.0,0.4,0.0,0.003921568725098],[1.0,0.4,0.0,0.003921568725098],[0.37254901960784315,0.79215682745098,0.745098039221568863,0.003921568725098]),那么问题是什么呢?我需要得到嵌套列表,不是数组。与输入数据格式相同请在问题中添加您想要的示例,只需将其转换回
out=list(np.divide(data,255))
即可,它将带来数组([[1.0,0.4,0.0,0.00392156862745098],[1.0,0.4,0.0,0.0,0.00392156862745098],[1.0,0.4,0.0.0,0.003921568745098],[0.37254901960784315,0.792156862745098,0.74509803922156862745098])那么问题出在哪里?我需要的是嵌套列表,而不是数组。与输入数据格式相同。请在问题中添加您想要的示例,只需使用
out=list(np.divide(data,255))