python实现矩阵打印
本文实例为大家分享了python实现矩阵打印的具体代码,供大家参考,具体内容如下
之前面试嵌入式软件的一道题,用c实现矩阵打印,考场上并没有写出来,之后总感觉自己写不出来也就没有去实现,在网上找也没能找到答案,结果这问题一直悬在脑海里。这才静下来想了想,发现并不难,便打算用python来实现,同时也是学习python之路的一个开始吧。
print("Please input a number:",end='') num = int(input()) n = num*2 Matrix = [([0] * n)for i in range(n)] for i in range(0,num): x = num-i for j in range(i,n-i): #print(j) #Matrix[i].insert(j,num-i) #Matrix[j].insert(i,num-i) #Matrix[n-i-1].insert(j,num-i) #Matrix[j].insert(n-i-1,num-i) Matrix[i][j] = x Matrix[j][i] = x Matrix[n-i-1][j] = x Matrix[j][n-i-1] = x for i in range(0,n): #print(i) for j in range(0,n): print(str(Matrix[i][j])+" ",end='') # print(" ",end='') print('\n')
我使用vscode写的,感觉蛮喜欢的。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
python 顺时针打印矩阵的超简洁代码
如下所示: # -*- coding:utf-8 -*- class Solution: # matrix类型为二维列表,需要返回列表 def printMatrix(self, matrix): # write code here res=[] n=len(matrix) m=len(matrix[0]) if m==1 and n==1: res=[matrix[0][0]] return res else: for o in range((min(m,n)+1)//2): [res.app
-
python实现顺时针打印矩阵
面试题之顺时针打印矩阵,Python实现,供大家参考,具体内容如下 问题描述: 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,输入如下矩阵: 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 思路:每次打印并删除矩阵的第一行,然后将矩阵逆时针翻转90度,直至打印出全部结果 具体代码实现如下: # coding:utf-8 class Solution(object): def printMatrix(self, matrix):
-
Python使用迭代器打印螺旋矩阵的思路及代码示例
思路 螺旋矩阵是指一个呈螺旋状的矩阵,它的数字由第一行开始到右边不断变大,向下变大, 向左变大,向上变大,如此循环. 螺旋矩阵用二维数组表示,坐标(x,y),即(x轴坐标,y轴坐标). 顺时针螺旋的方向是->右,下,左,上,用数值表示即是x加1格(1,0),y加1格(0,1),x减1格(-1,0),y减1格(0,-1). 坐标从(0,0)开始行走,当超出范围或遇到障碍时切换方向. 螺旋矩阵的打印首先要对n*n的数组进行赋值,根据规律可以看出,每一层都是按照右->下->左->上的顺序
-
python实现转圈打印矩阵
本文实例为大家分享了python实现转圈打印矩阵的具体代码,供大家参考,具体内容如下 #! conding:utf-8 __author__ = "hotpot" __date__ = "2017/10/28 9:40" def return_edge(matrix, start_col, end_col, start_row, end_row): if start_row == end_row: return matrix[start_row][start_col
-
Python实现打印螺旋矩阵功能的方法
本文实例讲述了Python实现打印螺旋矩阵功能的方法.分享给大家供大家参考,具体如下: 一.问题描述 输入N, 打印 N*N 螺旋矩阵 比如 N = 3,打印: 1 2 3 8 9 4 7 6 5 N = 4,打印: 1 2 3 4 12 13 14 5 11 16 15 6 10 9 8 7 二.思路 常规法是不断的对数据边界进行判断会很复杂,不妨考虑通过递归的解决每一层的数字. 三.代码 #coding:utf-8 n = int(raw_input('>')) #初始化数组 arr = [
-
python实现矩阵打印
本文实例为大家分享了python实现矩阵打印的具体代码,供大家参考,具体内容如下 之前面试嵌入式软件的一道题,用c实现矩阵打印,考场上并没有写出来,之后总感觉自己写不出来也就没有去实现,在网上找也没能找到答案,结果这问题一直悬在脑海里.这才静下来想了想,发现并不难,便打算用python来实现,同时也是学习python之路的一个开始吧. print("Please input a number:",end='') num = int(input()) n = num*2 Matrix =
-
python 实现矩阵按对角线打印
如下所示: Description: 将一个矩阵(二维数组)按对角线向右进行打印.(搜了一下发现好像是美团某次面试要求半小时手撕的题) Example: Input: [ [1,2,3,4], [5,1,2,3], [9,5,1,2] ] Output: [[4], [3, 3], [2, 2, 2], [1, 1, 1], [5, 5], [9]] 思路: 考虑每条对角线开头元素的index(i,j).i从0开始遍历,j从col-1开始遍历,首先考虑j的变化,若j变为0,则保持不变,让i变化.
-
python查看矩阵的行列号以及维数方式
print(X.shape):查看矩阵的行列号 print(len(X)):查看矩阵的行数 print(X.ndim):查看矩阵的维数 1 查看矩阵的行列号 2 查看矩阵的行数 3 查看矩阵的维数 补充知识:Python之numpy模块的添加及矩阵乘法的维数问题 在Python中,numpy 模块是需要自己安装的,在安装编程软件时,默认安装了pip,因此我们可以用pip命令来安装 numpy模块. 首先打开电脑的"cmd.exe",如下图所示: 在这里输入"pip insta
-
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
一. 打印图片属性.设置图片存储路径 代码如下: #打印图片的属性.保存图片位置 import cv2 as cv import numpy as np #numpy是一个开源的Python科学计算库 def get_image_info(image): print(type(image)) #type() 函数如果只有第一个参数则返回对象的类型 在这里函数显示图片类型为 numpy类型的数组 print(image.shape) #图像矩阵的shape属性表示图像的大小,shape会返回tup
-
python实现矩阵乘法的方法
本文实例讲述了python实现矩阵乘法的方法.分享给大家供大家参考.具体实现方法如下: def matrixMul(A, B): res = [[0] * len(B[0]) for i in range(len(A))] for i in range(len(A)): for j in range(len(B[0])): for k in range(len(B)): res[i][j] += A[i][k] * B[k][j] return res def matrixMul2(A, B):
-
python使用mailbox打印电子邮件的方法
本文实例讲述了python使用mailbox打印电子邮件的方法.分享给大家供大家参考.具体如下: 该范例在linux下使用 import mailbox mailboxname = "/tmp/mymailbox" mbox = mailbox.UnixMailbox(open(mailboxname)) msgcounter = 0 while 1: mailmsg = mbox.next() if not mailmsg: break msgcounter = msgcounter
-
Python表示矩阵的方法分析
本文实例讲述了Python表示矩阵的方法.分享给大家供大家参考,具体如下: 在c语言中,表示个"整型3行4列"的矩阵,可以这样声明:int a[3][4];在python中一不能声明变量int,二不能列出维数.可以利用列表中夹带列表形式表示.例如: 表示矩阵 ,可以这样: count = 1 a = [] for i in range(0, 3): tmp = [] for j in range(0, 3): tmp.append(count) count += 1 a.append
-
Python实现矩阵转置的方法分析
本文实例讲述了Python实现矩阵转置的方法.分享给大家供大家参考,具体如下: 前几天群里有同学提出了一个问题:手头现在有个列表,列表里面两个元素,比如[1, 2],之后不断的添加新的列表,往原来相应位置添加.例如添加[3, 4]使原列表扩充为[[1, 3], [2, 4]],再添加[5, 6]扩充为[[1, 3, 5], [2, 4, 6]]等等. 其实不动脑筋的话,用个二重循环很容易写出来: def trans(m): a = [[] for i in m[0]] for i in m: f
-
python增加矩阵维度的实例讲解
numpy.expand_dims(a, axis) Examples >>> x = np.array([1,2]) >>> x.shape (2,) >>> y = np.expand_dims(x, axis=0) >>> y array([[1, 2]]) >>> y.shape (1, 2) >>> y = np.expand_dims(x, axis=1) # Equivalent to
随机推荐
- 快速正确的安装 Ruby, Rails 运行环境
- 使用VBS获取当前日期的前一天 并修正输出格式
- Java中常用的数据库连接池_动力节点Java学院整理
- Mybatis开发环境搭建实现数据的增删改查功能
- java基础学习笔记之泛型
- 查找页面中所有类为test的结点的方法
- Windows下Python2与Python3两个版本共存的方法详解
- Spring AOP 动态多数据源的实例详解
- mysql优化系列 DELETE子查询改写优化
- jsp中如何实现按下回车键自动提交表单
- Android Notification的多种用法总结
- 基于Java中两种jersey文件上传方式
- java集合map取key使用示例 java遍历map
- php获取目录中所有文件名及判断文件与目录的简单方法
- php函数连续调用实例分析
- php输出金字塔的2种实现方法
- 需要注意的13种的房间禁忌
- 藏在正则表达式里的陷阱(推荐)
- python机器学习实战之树回归详解
- 详解iOS设置字体的三种方式