Idea of my solution is:

- move first row of matrix in answer
- delete it from original matrix
- rotate -90* rest of matrix
- repeat 1-3 steps until initial matrix become empty

```
class Solution(object):
def spiralOrder(self, matrix):
"""
:type matrix: List[List[int]]
:rtype: List[int]
"""
answer=[]
while len(matrix)>0:
answer.extend(matrix[0])
del matrix[0]
matrix = zip(*matrix)
matrix = matrix[::-1]
return(answer)
```