python二维数组运算-作业


写一个程序,能够计算xy的二维数组,xy两个值为变量由用户输入
这题我先查了半天啥叫二维数组,原来就是遍历xy两个变量然后把遍历
出来的数逐个相乘,方法一是出题作者提供的,但是我觉的作为一个
入门级的题,代码写成这样,我真是理解不了,所以我试着把他代码中的
逻辑拆开逐一实现了,这样向我这样入门选手看着才能明白一点
建议debug 5,6可能看的更明白些,另外注意输入的逗号要是英文的逗号

"""
1 接收用户输入的值
2 split方法利用逗号把输入值分成切片,转换成列表,然后利用for循环把列表中的值遍历给整数型x
3 定义两个函数接收列表中的值
4 利用循环嵌套输出大列表中有小列表的模版
5 利用循环嵌套将值逐一写入列表中
6 打印函数
"""
# -----------------------------------------------------------------
# 方法一

input_str = input("请输入x,y的值,中间用逗号分开:")
dimensions = [int(x) for x in input_str.split(',')]
rowNum = dimensions[0]
colNum = dimensions[1]
multilist = [[0 for col in range(colNum)] for row in range(rowNum)]

for row in range(rowNum):
    for col in range(colNum):
        multilist[row][col] = row * col

print(multilist)

1 把用户输入的值变成元组
2 再把元组变成列表
3 定义两个变量来接收列表中的两个值,括号里的是值对应的索引
4 定一个总列表,用来接收分列表
5 设计一个嵌套循环,外部循环是先把分列表的空列表添加到总列表中,
然后进入内部循环,遍历y值col然后逐个把y*x,把得出的值逐个添加到分列表中,
遍历完返回上级,将x值加1再次循环,直到循环结束。
6 打印总列表

知识点
二维数组 - 就是把遍历出的xy值逐个相乘得出结果

# -----------------------------------------------------------------
# 方法二

import ast


input_list = ast.literal_eval(input("请输入x,y的值,中间用逗号分开:"))

input_list = list(input_list)

rowNum = input_list[0]

colNum = input_list[1]

multi_list = []

for row in range(rowNum):
    internal_list = []
    multi_list.append(internal_list)
    for col in range(colNum):
        n = row * col
        internal_list.append(n)

print(multi_list)
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值