如何在不使用Python 3中的列表的情况下向后迭代数字?
使用列表,我可能会做类似的事情:
li = list(range(100))
for i in li[::-1]:
print(i)
Run Code Online (Sandbox Code Playgroud)
这是一个很好的解决方案,但它不适用于大量的数据.现在,我试图用大数字向后迭代一个数字,但是发生溢出错误,所以我想我需要以某种方式找到一种方法来向后迭代一个数字而不使用列表.
有什么办法吗?
我正在编写一个需要二维数组的程序,并遇到了一个奇怪的问题.
起初,我写道:
board = [[]]*11
Run Code Online (Sandbox Code Playgroud)
在数组中创建十一个数组.
然后我想在每个数组中有十一个空格,所以我写道:
for i in range(11):
board[i].append(' ')
Run Code Online (Sandbox Code Playgroud)
我想用星号填充第三个数组,从索引4到7,所以我写道:
for i in range(4, 7):
board[2][i] = '*'
Run Code Online (Sandbox Code Playgroud)
但出乎意料的是,代替只有第三个数组受到代码的影响,"board"中的所有数组都被更改了.
当然,我写道:
board2 = []
for i in range(11):
board2.append([])
Run Code Online (Sandbox Code Playgroud)
创建我的数组,然后写道:
for i in range(11):
for i in range(11):
board2[i].append(' ')
Run Code Online (Sandbox Code Playgroud)
用11个包含11个空格的数组创建我的数组.
在我创建了这样的数组后,我能够运行代码来添加星星,并且正如预期的那样,只影响了一个数组而不是所有数组.
有人可以解释这两个看似相似的数组有什么区别吗?
每当我编写包含ArrayUtil的代码时,都会导致意外错误:
int[] values = ArrayUtil.randomIntArray(30, 300);
Run Code Online (Sandbox Code Playgroud)
我使用Eclipse编写代码,"ArrayUtil"下总是有一个红色下划线.我究竟做错了什么?