一、代码
from paddle import fluid
a = fluid.layers.fill_constant(shape=[2,2],dtype="float32",value=1.0)
i = fluid.layers.zeros([1],dtype="int64")
until = fluid.layers.fill_constant([1],dtype="int64",value=10)
data_arr = fluid.layers.array_write(a,i)
cond = fluid.layers.less_than(x=i,y=until)
while_op = fluid.layers.While(cond=cond)
with while_op.block():
a = fluid.layers.array_read(data_arr,i)
a = a+1
i = fluid.layers.increment(x=i,value=1,in_place=True)
fluid.layers.less_than(x=i,y=until,cond=cond)
fluid.layers.array_write(a,i,data_arr)
ret = fluid.layers.array_read(data_arr,i-1)
exe = fluid.Executor(fluid.CPUPlace())
exe.run(fluid.default_startup_program())
exe.run(fetch_list=[ret])
二、运行结果


本文通过一个具体的代码示例,展示了如何在PaddlePaddle中使用循环结构进行数组操作,包括初始化、写入、读取和更新数组元素,并在CPU环境下执行程序。
397

被折叠的 条评论
为什么被折叠?



