python - 创建 N 个长度为 M 的数组,其中序列在每个数组上增加 1
问题描述
早上好,
给定两个数字(a,b),我应该创建长度为“b”的“a”个不同列表,其中每个列表的序列加一。
例如 :
1,2 =>[[0,1]]
2,2 = >[[0,1], [1,2]]
我正在尝试编写以下函数:
def increase_arrays(arrays, length):
result = [[i for i in range(length)] for i in range(arrays)]
return result
increase_arrays(2,3)
=> [[0, 1, 2], [0, 1, 2]]
我看不到如何修改我的代码,所以第二个数组是[1,2,3]
. 任何人都可以帮助解决这个问题吗?
解决方案
你有著名的重复索引问题,你有 2 个索引i
。
以下是您需要的代码:
def increase_arrays(arrays, length):
result = [[i + j for i in range(length)] for j in range(arrays)]
return result
increase_arrays(2, 3)
返回[[0, 1, 2], [1, 2, 3]]
推荐阅读
- java - 使用java从文本文件中删除带有不需要字符的行
- java - 以编程方式获取 KeyStore 的条目类型
- java - 无法从 JNI 中的 c++ 包装器调用 java 方法
- javascript - 在反应类组件中未定义我的变量
- java - response.jsonPath() 元素周围有方括号,如何检索字符串值?放心
- python - 使用 Dash 对象创建初始/更新 Pandas DataFrame
- android - 升级到 Gradle 6 和 Android Gradle 插件 4.0.0 无法获取“https://dl.google.com/android/repository/addons_list-3.xml”
- android - Gradle 任务 AssembleDebug 失败
- javascript - 如何等待循环完成?
- r - 使用来自另一个数据帧的数据子集数据帧