"""
2 定义一个函数,fn(n)其中n表示输入n行n列的矩阵,需要满足的要求是在n为
3时先输出
3 1 2 3
4 4 5 6
5 7 8 9
6 后输出
7 1 4 7
8 2 5 8
9 3 6 9
10 解决方案:
11 定义一个局部函数,返回其局部函数的值,并且根据其规律来写代码
12 """
13 def found_list(num):
14 """
15 创建一个num*num的二维列表
16 """
17 list1 = [[0 for i in range(num)] for i in range(num)]
18 return list1
19
20 def function(num,list1):
21 z = 0
22 for x in range(num):
23 for y in range(num):
24 z += 1
25 list1[x][y] = z
26
27 return list1
28 def function2(num,list2):
29 i = 1
30 for x in range(num):
31 n = 1
32 for y in range(num):
33 z = i + (n - 1)*num
34 list2[x][y] = z
35 n += 1
36 if n > num:
37 break
38 i += 1
39 if i > num:
40 break
41 return list2
42
43 def display(list1):
44 for x in range(num):
45 for y in range(num):
46 print(list1[x][y],end = "\t")
47 print()
48 print("#"*50)
49 if __name__ == "__main__":
50 num = int(input())
51 list1 = found_list(num)
52 list2 = found_list(num)
53 list3 = function(num,list1)
54 list4 = function2(num,list2)
55 display(list3)
56 display(list4)

运行结果

输入3时

1       2       3
4       5       6

7       8       9

##################################################

1       4       7

2       5       8

3       6       9

##################################################

输入5时
1       2       3       4       5
6       7       8       9       10

11      12      13      14      15

16      17      18      19      20

21      22      23      24      25

##################################################

1       6       11      16      21

2       7       12      17      22

3       8       13      18      23

4       9       14      19      24

5       10      15      20      25

##################################################

这只是一种实现方法,并且代码的还有很大的优化空间,利用局部函数或者用函数作为参数均可以使代码变得更加整洁

python-给一个参数n,例如3:先输出1,2,3,4,5,6,7,8,9,每三个数后换行,后输出1,4,7,2,5,8,3,6,9的更多相关文章

  1. Python 构造一个可接受任意数量参数的函数

    为了能让一个函数接受任意数量的位置参数,可以使用一个* 参数 在这个例子中,rest 是由所有其他位置参数组成的元组.然后我们在代码中把它当成了一个序列来进行后续的计算

  2. 用Python写一个简单的Web框架

    一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...

  3. python函数动态参数详解

    Python的动态参数: 1,参数前一个"*":在函数中会把传的参数转成一个元组. def func (*args): print(args) func(123,1,2,'a') ...

  4. Python中的参数

    Python中的参数 1. python函数参数有多重形式: * test(arg1,arg2,`*args`) * test(arg1,arg2,`*args`,`**kwargs`) 2. 其中比 ...

  5. [转]Python 命令行参数和getopt模块详解

    FROM : http://www.tuicool.com/articles/jaqQvq 有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Pyt ...

  6. python命令行参数

    〇.python中对应的argc, argv需要模块:sys参数个数:len(sys.argv)脚本名:    sys.argv[0]参数1:     sys.argv[1]参数2:     sys. ...

  7. 使用python检测一个设备是否ping的通

    使用python检测一个设备是否ping的通 一,subprocess以及常用的封装函数 运行python的时候,我们都是在创建并运行一个进程.像Linux进程那样,一个进程可以fork一个子进程,并 ...

  8. python获取命令行参数的方法

    想用python处理一下文件,发现有argv这个用法,搜来学习一下. 如果想对python脚步传参数,那么就需要命令行参数的支持了,这样可以省的每次去改脚步了. 用法是:python    xx.py ...

  9. Python 命令行参数和getopt模块详解

    有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Python里,命令行的参数和C语言很类似(因为标准Python是用C语言实现的).在C语言里,m ...

随机推荐

  1. codeforce 849A

    A. Odds and Ends time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  2. μC/OS-III---I笔记2---实钟节拍

    所谓时钟节拍,就是CPU以固定的频率产生中断,可以看做是系统的心跳.内核利用这个时钟节拍来管理各个任务的一些时间管理比如延时,定时,超时检测,时间轮片调度等.时钟节拍的频率一般10Hz--1000Hz ...

  3. 最新 React 源码学习笔记

    最新 React 源码学习笔记 v17.x.x 框架架构 核心算法 设计模式 编码风格 项目结构 为什么出现 解决了什么问题 有哪些应用场景 refs https://github.com/learn ...

  4. Open Source Web Monitor System

    Open Source Web Monitor System 开源 Web 监控系统 Front End Monitor System / Front End Monitor Platform 前端监 ...

  5. GitHub GraphQL API v4 & GitHub REST API v3

    GitHub, GraphQL API, v4 ,REST API, v3, GraphQL, https://developer.github.com/v4/ https://developer.g ...

  6. http methods & restful api methods

    http methods & restful api methods 超文本传输​​协议(HTTP)是用于传输超媒体文档(例如HTML)的应用层协议 https://developer.moz ...

  7. bili & library bundler

    bili & library bundler https://bili.egoist.sh/#/#quick-start # Node.js 8 or above: $ npm i -D bi ...

  8. 详解稳定币圣杯USDN

    稳定币飞速发展,USDN 一骑绝尘,但因合规问题饱受质疑.合规稳定币作为后来者,奋起直追,亦光耀夺目.而更符合区块链精神的稳定币(抵押其他资产生成稳定币),长期以来只有 Maker 的 DAI 能够在 ...

  9. 「NGK每日快讯」12.21日NGK第48期官方快讯!

  10. Zookeeper从入门到删库跑路

    导语 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等.Zookeeper是hadoop的一个子项 ...