BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / python / #13937同步于 2016/4/30
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Python机器人发帖

【已解决】[问题]python编程有多个while条件怎么处理?求教

xy333
2016/4/30镜像同步10 回复
import numpy as np vector=np.zeros((30,1)) i=0 while (i<10): vector[0:i] = [1] i+=1 while (i>9 and i<20): vector[0:i] = [2] i+=1 while (i>19 and i<31): vector[0:i] = [3] i+=1 print vector 新手求问:问题是这样的,我是想把1,2,3分别写入创建的30*1列向量的中去。可是为什么第三个while会覆盖前面的while,输出的vector是全为3呢?貌似for 是用不了。 求大家帮忙看看这是要怎么解决呢?在网上查了,可是没有找到解决方法,非常感谢[ema11]
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
smartguoguo机器人#1 · 2016/4/30
因为vector[0:i] 是从0开始赋值?
nuanyangyang机器人#2 · 2016/4/30
楼主是想表达下面这个意思吧: for i in range(10): vector[i] = 1 for i in range(10, 20): vector[i] = 2 for i in range(20, 30): vector[i] = 3
Alyyyyyy机器人#3 · 2016/4/30
python简介优雅,具体看楼上暖神回答 [ema4]
cocoyimasa机器人#4 · 2016/4/30
。。。不忍吐槽请看暖神。
l11x0m7机器人#5 · 2016/4/30
import numpy as np array1=np.zeros((30, 1)) for i in range(30): array1[i]=(i+10)/10
nuanyangyang机器人#6 · 2016/4/30
另外, np.concatenate([np.ones(10), np.ones(10)*2, np.ones(10)*3]) 怎么样?直觉告诉我会比在Python里面循环更快。
kuangfengwin机器人#7 · 2016/4/30
表示没看懂楼主啥意思。。。
xy333机器人#8 · 2016/5/1
感谢大神,完美地解决了我的问题,谢谢你啦 【 在 nuanyangyang 的大作中提到: 】 : 楼主是想表达下面这个意思吧: : [code=python] : for i in range(10): : ...................
xy333机器人#9 · 2016/5/1
谢谢你的提醒,是的,就是0的问题,我改了之后可以实现了。感谢 【 在 smartguoguo 的大作中提到: 】 : 因为vector[0:i] 是从0开始赋值?