Python中的旋转数组
下午好Python中的旋转数组,python,arrays,loops,math,matrix,Python,Arrays,Loops,Math,Matrix,下午好 我可以在Python中获得解决数组旋转的帮助吗?我希望将4x4数组转换为16x1数组。我想的是,我会把每一行(4x1),旋转它(1x4),然后把每一行的旋转附加在一起,直到我达到16x1。有人知道如何在Python中实现这一点吗?非常感谢您的帮助。我有点不确定您到底在找什么,但是: example_arr = [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] # List Comprehension new_arr = [ item for
我可以在Python中获得解决数组旋转的帮助吗?我希望将4x4数组转换为16x1数组。我想的是,我会把每一行(4x1),旋转它(1x4),然后把每一行的旋转附加在一起,直到我达到16x1。有人知道如何在Python中实现这一点吗?非常感谢您的帮助。我有点不确定您到底在找什么,但是:
example_arr = [
[ 1, 2, 3 ],
[ 4, 5, 6 ],
[ 7, 8, 9 ]
]
# List Comprehension
new_arr = [ item for sublist in example_arr for item in sublist ]
# Long Form
new_arr = []
for sublist in example_arr:
for item in sublist:
new_arr.append(item)
这是你要找的东西吗 I/p: O/p: 您可以尝试以下方法:
my_arr = [
[ 0, 1, 2, 3 ],
[ 4, 5, 6, 7 ],
[ 8, 9, 10, 11 ],
[ 12, 13, 14, 15 ],
]
new_arr = []
for row in my_arr:
new_arr.extend(row)
print(new_arr)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
arr=[[0,1,2,3],
[4, 5, 6, 7],
[8, 9, 10, 11],
[12, 13, 14, 15]]
i=0
新的_arr=[]
而我
如果你只是问一个答案,而没有展示你尝试过的东西,那么我的问题就很糟糕了……你有算法步骤。显示您遇到的编码问题。请提供一个示例,包括您迄今为止尝试的数据和代码。这是一个列表列表,还是一个实际的数组,就像在numpy中一样?谈论“旋转”数组与你所说的“旋转”数组的组合方式不符,因为你真正做的是展平数组。您的输入是一个实际的numpy数组还是一个列表列表?很抱歉,在我尝试解决方案的地方不包含代码是一种糟糕的形式。哈德良解决了这个问题(见下文)。谢谢大家。谢谢大家,如果您不使用“arr=new\u-arr”,而是使用“arr1=new\u-arr”,那么您提供的代码可以正常工作。我只是把它作为自己的变量。这就解决了我的问题。我想你可以用for循环来代替:for arr中的段:
谢谢,我发现你的代码像我希望的那样工作。
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
my_arr = [
[ 0, 1, 2, 3 ],
[ 4, 5, 6, 7 ],
[ 8, 9, 10, 11 ],
[ 12, 13, 14, 15 ],
]
new_arr = []
for row in my_arr:
new_arr.extend(row)
print(new_arr)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
arr = [[0, 1, 2, 3],
[4, 5, 6, 7],
[8, 9, 10, 11],
[12, 13, 14, 15]]
i = 0
new_arr = []
while i < len(arr):
new_arr += arr[i]
i += 1
arr = new_arr
del new_arr# no longer needed