我知道如果我想在 Python 中创建 3D 数组,我可以这样做:
[[['#' for i in range(3)] for j in range(3)] for k in range(3)]
也就是说,如果我想在 3D 数组中包含另一个符号怎么办? 例如,如果我想在数组中交替使用“#”和“-”怎么办?或者如果我想要连续两个“#”,后跟一个“-”怎么办?我怎么能写出这样的东西呢? 感谢您抽出时间。
最佳答案
尝试使用 itertools.cycle
:
import itertools
it = itertools.cycle(['#', '-', '#'])
print([[[next(it) for i in range(3)] for j in range(3)] for k in range(3)])
输出:
[[['#', '-', '#'], ['#', '-', '#'], ['#', '-', '#']], [['#', '-', '#'], ['#', '-', '#'], ['#', '-', '#']], [['#', '-', '#'], ['#', '-', '#'], ['#', '-', '#']]]
关于python - 如何在 Python 中创建由多个对象组成的 3D 数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65376457/