码迷,mamicode.com
首页 > 编程语言 > 详细

python实现类似于Matlab中的magic函数

时间:2017-09-10 21:40:26      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:atl   img   魔方   封装   __name__   pytho   get   alt   .net   

参考这篇文章的代码封装了一个类似Matlab中的magic函数,用来生成魔方矩阵。

 

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import numpy as np

def magic(n):
    row,col=0,n//2
    magic=[]
    for i in range(n):  
        magic.append([0]*n)
    magic[row][col]=1  
    for i in range(2,n*n+1):  
        r,l=(row-1+n)%n,(col+1)%n      
        if(magic[r][l]==0):
            row,col=r,l         
        else: 
            row=(row+1)%n  
        magic[row][col]=i
    marray = np.array(magic)
    return marray


if __name__ == ‘__main__‘:
    y = magic(7)
    print y
    print type(y)

  

 

测试结果

技术分享

 

Matlab

技术分享

 

 

magic(7)

技术分享

 

Matlab

 技术分享

 

python实现类似于Matlab中的magic函数

标签:atl   img   魔方   封装   __name__   pytho   get   alt   .net   

原文地址:http://www.cnblogs.com/ssooking/p/7502244.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!