因此,我所要处理的任务或许是最好的解释:
我试图通过定义循环和函数来使用python输出每个位置的列表,但是一旦我到达x=0,y=0 z=1.0,它就停止了。在我看来,我的are循环中有两个没有工作.
到目前为止,我的代码如下:
def zcoord():
global z
while z<=1.0:
print('%.2f' % x + ' %.2f' % y + ' %.2f' % z)
z+=0.1
def ycoord():
global y
while y<=1.0:
zcoord()
y+=0.1
def xcoord():
global x
while x<=1.0:
ycoord()
x+=0.1
x=0.0
y=0.0
z=0.0
xcoord()发布于 2013-08-19 11:46:46
您的循环都在工作,但是您的zcoord()函数只打印一个循环。
第二次调用zcoord()时,z仍然大于1.0,循环不会运行,也不会打印。
如果您想要创建嵌套循环,那么使用整数并除以10会更简单:
for x in range(11):
for y in range(11):
for z in range(11):
print('%.2f' % (x/10.0) + ' %.2f' % (y/10.0) + ' %.2f' % (z/10.0))这可以使用itertools.product()折叠成一个循环。
from itertools import product
for x, y, z in product(range(11), repeat=3):
print('%.2f' % (x/10.0) + ' %.2f' % (y/10.0) + ' %.2f' % (z/10.0))https://stackoverflow.com/questions/18312968
复制相似问题