たとえば、私は次のlist
ようなものを持っています:
a = [143, 146, 152, 235, 246, 468, 476, 607, 615, 707, 712]
list
この形式で2次元に変更したい:
b = [
[143, 146, 152],
[235, 246],
[468, 476],
[607, 615],
[707, 712]
]
または:
"143 146 152
235 246
468 476
607 615
707 712"
でもlist
形は= [3, 2, 2, 2, 2]
これを達成する方法は?私はこのようなものを持っています:
devu = ''
for i in b:
for j in range(i):
devu += str(b[j])
devu += ' '
print(devu)
しかし、次のような結果が得られました。
143146152 143146 143146 143146 143146
これは1つのアプローチです。使用iter
と単純な反復。
デモ:
a=[143, 146, 152, 235, 246, 468, 476, 607, 615, 707, 712]
a = iter(a)
shape =[3,2,2,2,2]
result = []
for s in shape:
temp = []
for i in range(s):
temp.append(next(a))
result.append(temp)
print(result)
出力:
[[143, 146, 152], [235, 246], [468, 476], [607, 615], [707, 712]]
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加