哪里有这行:
x = minimum
我想你的意思是:
minimum = x
看来您刚刚的分配顺序不正确。分配给变量x
在你的迭代期间A
不会有任何副作用。
EDIT
我在评论中发现你的问题是你正在使用readlines()
函数,但文件中只有一行。你真正想做的是阅读该行然后使用split()
生成列表:
A = file.read().split()
但请记住,由于您在与“
example:
inputs:
5 4 14 6 -1 2 0 9 8 7 3 4 -10 200
output:
['-1']
['-1', '-10']
['-1', '-10', '0']
['-1', '-10', '0', '14']
['-1', '-10', '0', '14', '2']
['-1', '-10', '0', '14', '2', '200']
['-1', '-10', '0', '14', '2', '200', '3']
['-1', '-10', '0', '14', '2', '200', '3', '4']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4', '5']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4', '5', '6']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4', '5', '6', '7']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4', '5', '6', '7', '8']
['-1', '-10', '0', '14', '2', '200', '3', '4', '4', '5', '6', '7', '8', '9']
注意上面的方法200
不是在最后而是在之后2
,要获得数字顺序,您需要将字符串强制转换为数字数据类型,可能是int
。当您使用以下命令从文件中读取数字时,您可以轻松地做到这一点map
功能:
A = map(int, file.read().split())
这将调用int
对 split 返回的每个元素进行强制转换函数before将元素存储在 A 中。进行此更改后,这是我从程序中看到的输出:
inputs:
5 4 14 6 -1 2 0 9 8 7 3 4 -10 200
output:
[-10]
[-10, -1]
[-10, -1, 0]
[-10, -1, 0, 2]
[-10, -1, 0, 2, 3]
[-10, -1, 0, 2, 3, 4]
[-10, -1, 0, 2, 3, 4, 4]
[-10, -1, 0, 2, 3, 4, 4, 5]
[-10, -1, 0, 2, 3, 4, 4, 5, 6]
[-10, -1, 0, 2, 3, 4, 4, 5, 6, 7]
[-10, -1, 0, 2, 3, 4, 4, 5, 6, 7, 8]
[-10, -1, 0, 2, 3, 4, 4, 5, 6, 7, 8, 9]
[-10, -1, 0, 2, 3, 4, 4, 5, 6, 7, 8, 9, 14]
[-10, -1, 0, 2, 3, 4, 4, 5, 6, 7, 8, 9, 14, 200]