python顺时针打印矩阵

给定一个矩阵数据,顺时针将数据打印出来。 

import numpy as np
import pandas as pd

#生成一个10*8的矩阵
data = np.arange(1, 81).reshape((10,8))
df = pd.DataFrame(data)
while True:
    #判断行或者列是否为空,为空则退出循环
    if len(df.index) == 0 or len(df.columns) == 0:
        break
    #输出第一行
    [print(i, end=' ') for i in df.iloc[:1].values[0]]
    #删除第一行
    df.drop(index=df.index[0], inplace=True)
    if len(df.index)==0 or len(df.columns)==0:
        break
    #输出最后一列
    [print(i, end=' ') for i in [ j[0] for j in df.iloc[:,-1:].values]]
    #删除最后一列
    df.drop(columns=df.columns[len(df.columns)-1], inplace=True)
    if len(df.index) == 0 or len(df.columns) == 0:
        break
    #输出最后一行
    [print(i, end=' ') for i in sorted(df.iloc[-1:].values[0], reverse=True)]
    #删除最后一行
    df.drop(index=df.index[len(df.index)-1], inplace=True)
    if len(df.index) == 0 or len(df.columns) == 0:
        break
    #输出第一列
    [print(i, end=' ') for i in sorted([j[0] for j in df.iloc[:, :1].values], reverse=True)]
    #删除第一列
    df.drop(columns=df.columns[0], inplace=True)
    print()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值