【发布时间】:2019-02-24 19:34:25
【问题描述】:
我想使用一个 for 循环来定义一个范围,我想使用一个 while 循环来检查这个 for 循环中每个值的条件,并为我提供不同 c 值的结果,但不幸的是,我的算法不起作用,我不知道我的错误是什么。
j=0
jl=[]
c=np.linspace(0,20,num=20)
for a in range(0,len(c)):
while j<5:
j=c[a]+2
jl.append(j)
我正在寻找的结果是将不同的 c 值放入 while 循环中并计算 j 并检查它是否大于 5。如果是,则将其附加到 jl。总的来说,我想用带有索引的for循环定义一个范围,并在while循环中检查这个范围的每个值并获得j的结果。 所以预期结果是 j 的值小于 5 (c[a]+2
【问题讨论】:
-
你从
j=0开始,你的while条件是j>5所以它永远不会运行。 -
@wwii 抱歉我写错了,我更正了
-
您的示例有
jl.append(j)outside/after for 循环 - 这是有意的吗? - 它只会在 for 循环完成后运行一次。 -
@wwii 其实我是编程新手,尤其是python,这就是为什么我不知道自己的错误,这个任务对我来说非常重要,因为我要在大学里写一个程序。实际上,我现在不知道我应该把这个附加在哪里。我没有得到任何结果。
-
您实际上并不需要此处的范围,因为您从不尝试将
c[a]分配 或将a用于索引c以外的任何内容。只需直接遍历c:for item in c: while j < 5: j=item + 2; ...。
标签: python