python工厂第19层 多重列表1

点爆你的反射弧 2020-12-10

1

大部分元素是0的矩阵称为稀疏矩阵,假设有k个非0元素,则可以把矩阵用k * 3的矩阵简记之,其中第一列是行号,第二列是列号,第三列是该元素的值。如:

0 0 0 5 简记成:1 4 5

0 2 0 0 简记成:2 2 2

0 1 0 0 简记成:3 2 1

试编程读入一个3行5列的稀疏矩阵,转换成简记形式。

输入格式

输入包括3行,每行5个正整数,以空格隔开,代表一个3行5列的稀疏矩阵。

输出格式

输出k行,k为输入的矩阵中非0元素的个数。每行分别代表一个非0元素,按照从左到右,从上到下的顺序。每行包括三个整数,以空格隔开,分别代表该非0元素的行号,列号,以及元素的值。

示例1

输入:

0 3 0 0 0

0 0 7 0 0

1 0 0 0 5

输出:

1 2 3

2 3 7

3 1 1

3 5 5

解析:输入的格式是3行5列的数字,首先我们先把3行数据切片保存到列表a,b,c中

a1,b1,c1是计数用,用来记录非0数值所在的位置。

a=list(map(int,input().split()))

b=list(map(int,input().split()))

c=list(map(int,input().split()))

a1=b1=c1=0

通过for循环遍历列表a中的数据,如果是0,则计数加1,如果不是0,则输出一行三个数字,1代表第一行,a1+1表示非0数字的列数,i就是这个数字,输出完成计数也要加1 ,因为一行可能不只一个非0的数字。

for i in a:

  if i==0:

      a1+=1

  else:

      print('%s %s %s'%(1,a1+1,i))

      a1+=1

同上 ,通过for循环遍历列表b,c中的数据。

for i in b:

  if i==0:

      b1+=1

  else:

      print('%s %s %s'%(2,b1+1,i))

      b1+=1

for i in c:

  if i==0:

      c1+=1

  else:

      print('%s %s %s'%(3,c1+1,i))

      c1+=1

2

编程猫拿到了一个n*m二维列表,每一个位置和每一个位置存放的数字。你能将这个列表还原出来吗?没有告诉我们位置都是存放 0。

输入格式

第一行为整数看k, n和m

第2行到k+1 行每行有3个第一个告诉我们是在列表中第几行,第二个数字表示为列表中第几个,最后一个数字表示当前列表中存放的数字。

输出格式

输出n行,每行一个列表

示例1

输入:

2 2 2

0 1 5

1 1 6

输出:

[0, 5]

[0, 6]

解析:第一行的数字分别是表示有几个非0的数字,一共有几行列表,一行列表中有几个数字。

k,n,m = input().split()

k,n,m = int(k),int(n),int(m)

将数值保存到变量中

然后根据行数n,和列数m,创建列表并全部先填入0

a = []

for i in range(n):

  a.append([])

  for j in range(m):

      a[i].append(0)

非0的数字根据第2行到k+1 行每行有3个数,第一个告诉我们是在列表中第几行,第二个数字表示为列表中第几个,最后一个数字表示当前列表中存放的数字。

这里的数字和列表中的序号是一致的,比如0 1 5表示在第一行列表中的第二项是数字5。

for i in range(k):

  x,y,z = input().split()

  x,y,z = int(x),int(y),int(z)

  a[x][y] = z

最后输出所有的列表

for i in range(n):

  print(a[i])

3

在python中列表可以存放,各种各样的数据类型,当然也是可以存放列表的。我们称这样的列表为多重列表,如图所示:

那么你能读入一些数据讲他们转换为多重列表吗?每一行为一个列表,将他们组合为一个列表,并且输出。

输入格式

输入数据有n行

第一行为整数n

第二到n+1行 为用单个空格隔开的整数

输出格式

一个多重列表

示例1

输入:

3

1 2 3

4 5 6

7 8 9

输出:

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

解析:将列表数据加入到另一个列表中可以使用append( )。

首先获取列表的数量,并新建一个列表

n=int(input())

t=[]

循环n次,将列表增加到空列表中去

for i in range(n):

  l=list(map(int,input().split()))

  t.append(l)

最后输出大列表

print(t)

深圳SEO优化公司塘坑百搜词包大运网站关键词优化光明百度竞价木棉湾网站优化按天收费沙井网站搭建塘坑网站设计石岩营销网站大芬如何制作网站永湖网站搜索优化宝安网站排名优化大芬seo优化坑梓建设网站大鹏网站排名优化西乡网站建设龙岗外贸网站制作南联百搜标王大芬网站设计丹竹头模板制作大鹏营销网站南山企业网站建设南澳推广网站松岗模板制作民治网站定制西乡高端网站设计永湖关键词排名包年推广西乡网络广告推广观澜网络推广东莞seo网站优化广州网站优化按天计费大芬关键词按天扣费歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化