Python 小程序之动态二位数组

动态二位数组


文章目录

  • 动态二位数组
  • 前言
  • 一、基本内容
  • 二、代码编写
  • 三、效果展示


前言

没想出啥好点子,这次就给大家写个小程序,动态二维数组吧。


一、基本内容

程序画一个二维的方格,然后里面填上1-10的随机数,每隔一秒更新新一次。


二、代码编写

代码如下:

import time
import random
from tabulate import tabulate# 创建一个5x5的二维列表(数组)
rows = 5
cols = 5
arr = []
arr = [[None for col in range(cols)] for row in range(rows)]
for row in range(rows):for col in range(cols):arr[row][col] = 0print(arr)
# 填充一些随机数据
while True:for row in arr:for i, _ in enumerate(row):row[i] = random.randint(1, 10)# 打印成带边框的表格print(tabulate(arr, tablefmt="grid"))print("\n\n\n")time.sleep(1)

可能需要解释的代码如下:

  1. from tabulate import tabulate:从tabulate模块导入tabulate函数,这个函数可以将数据转换成漂亮的表格格式。
  2. rows = 5: 定义一个变量rows,其值为5,表示二维列表的行数。
  3. cols = 5: 定义一个变量cols,其值为5,表示二维列表的列数。
  4. arr = []: 创建一个空的列表arr,用于存储二维列表。
  5. arr = [[None for col in range(cols)] for row in range(rows)]:使用列表推导式创建一个5x5的二维列表,其中每个元素初始值为None。
  6. for row in range(rows): 和 for col in range(cols)::使用两个嵌套循环遍历二维列表的所有元素。
  7. arr[row][col] = 0: 将二维列表中的所有元素初始化为0。
  8. for row in arr: 和 for i, _ in enumerate(row)::再次使用两个嵌套循环遍历二维列表的所有元素。
  9. row[i] = random.randint(1, 10):使用random.randint()函数为二维列表中的每个元素生成一个1到10之间的随机整数。
  10. print(tabulate(arr, tablefmt=“grid”)):使用tabulate函数将二维列表转换成带边框的表格格式,并打印。

三、效果展示

在这里插入图片描述

这个二维数组的行数和列数,还有每个方格内的内容可以根据大家的需要自行修改。比如将随机数改成其他的中文或者英文也是可以的等等。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/305372.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习之制作静态库和动态库

写在前面: 我的Linux的学习之路非常坎坷。第一次学习Linux是在大一下的开学没多久,结果因为不会安装VMware就无疾而终了,可以说是没开始就失败了。第二次学习Linux是在大一下快放暑假(那个时候刚刚过完考试周)&#xf…

Python武器库开发-武器库篇之Git创建远程仓库和建立SSH key 免密登陆(三十七)

武器库篇之Git创建远程仓库和建立SSH key 免密登陆(三十七) Git是一种版本控制系统,用于跟踪文件的更改和协调多人开发项目。它可以记录文件的历史更改,协助多人协作开发,并提供分支管理功能。Git是一个分布式系统,意味着每个人在…

目标检测损失函数:IoU、GIoU、DIoU、CIoU、EIoU、alpha IoU、SIoU、WIoU原理及Pytorch实现

前言 损失函数是用来评价模型的预测值和真实值一致程度,损失函数越小,通常模型的性能越好。不同的模型用的损失函数一般也不一样。损失函数主要是用在模型的训练阶段,如果我们想让预测值无限接近于真实值,就需要将损失值降到最低…

Centos如何修改ssh端口

想必很大一部分的同学用的是centos服务器,对于默认的22端口存在一定的安全风险,所以今天我们一起看下如何修改ssh端口 一、什么是SSH SSH(Secure Shell)是一种安全的远程登录协议,它允许您通过网络远程连接到Linux系统…

关于Redis面试题

前言 之前为了准备面试,收集整理了一些面试题。 本篇文章更新时间2023年12月27日。 最新的内容可以看我的原文:https://www.yuque.com/wfzx/ninzck/cbf0cxkrr6s1kniv Redis 是什么 全名:远程字典服务。这是一个开源的在内存中的数据结构存…

3 个月前被裁员了,心情跌落谷底,直到我看到了这本神书…

3个月前的某一天,正在愉快的打工,突然被喊去谈话,然后就被辞退了。。 加入了找工作的大军 然而,因为疫情,因为大专学历的我,找工作比以往都艰难了许多 很多,纯粹就是因为学历,都不…

Vue3-26-路由-useRouter 和 useRoute 两个API 的作用介绍

先来说说两个API 的作用 useRouter() : 返回的是项目中的 路由实例的对象 可以通过这个实例对象进行路由的逻辑跳转 useRoute() : 返回的是当前的 路由对象, 可以在当前路由对象中获取到路由名称、路由参数、路由路径等玩完整的路由信息。 写个案例看一下具体是什么…

如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)

文章目录 摘要1. 环境搭建2. 测试局域网访问3. 内网穿透3.1 ubuntu本地安装cpolar3.2 创建隧道3.3 测试公网访问 4 配置固定http公网地址4.1 保留一个二级子域名4.1 配置固定二级子域名4.3 测试访问公网固定二级子域名 摘要 Nextcloud,它是ownCloud的一个分支,是一个文件共享服…

Illustrator脚本 #015 自动角线

这是一个在画板上自动生成辅助线和角线的脚本,只要单击最右边按钮运行脚本即可。 绿色的为参考线及出血线。 #target "Illustrator" var settings = {addTrim : true,addBleedGuide : true,addCenterGuide : true,addCover : false,overlapAlert : false,trimma…

「从红月开始」运输公司遭精神污染,小十七救哥哥,事发地陷危机

Hello,小伙伴们,我是拾荒君。 国漫《从红月开始》第3集超前爆料,本次透露陆辛首次被派遣去调查精神污染的任务。他的目的地是四方运输公司,一个主要由亡命之徒组成的组织。他们表面上从事运输业务,但背地里进行偷渡和走私活动。 …

SEO中的实体:它们是什么以及为什么它们很重要?

从了解搜索历史到区分实体与关键字,真正了解实体是什么,以便获得更有针对性的搜索流量。 关于SEO专业人士应该如何理解,更重要的是,如何利用SEO中的“实体”,存在很多困惑。 我明白这是从哪里来的,尤其是…

在用Vite开发时静态图片放哪里,才能保证显示,不出现找不到资源

在用Vite开发时静态图片放哪里 在用Vite开发时静态图片(资源)放哪里呢 ? 如果你想直接全部显示的那么请你把静态资源放到public目录下面,这样你一打包所有的静态资源都会放到打包根目录下。但是此时你在项目中引用的地址一定要是…