我的问题很难解释。
我想创建一个包含嵌套 for 循环的函数,
其数量与传递给函数的参数成正比。
这是一个假设的例子:
Function(2)
...将涉及...
for x in range (y):
for x in range (y):
do_whatever()
另一个例子...
Function(6)
...将涉及...
for x in range (y):
for x in range (y):
for x in range (y):
for x in range (y):
for x in range (y):
for x in range (y):
whatever()
for 循环 (y) 的变量实际上并未在嵌套代码中使用。
您的第一个想法可能是创建一个 for 循环,其范围是 number 参数的幂...
这行不通,因为产品会很大。我需要有 8 个嵌套 for 循环的实例。
产品对于 for 循环中的范围来说太大了。
还有其他参数需要传递给函数,但我可以自己处理。
这是代码(它创建了雪花分形)
from turtle import *
length = 800
speed(0)
def Mini(length):
for x in range (3):
forward(length)
right(60)
penup()
setpos(-500, 0)
pendown()
choice = input("Enter Complexity:")
if choice == 1:
for x in range (3):
forward(length)
left(120)
elif choice == 2:
for x in range (3):
Mini(length/3)
left(120)
if choice == 3:
for x in range (6):
Mini(length/9)
right(60)
Mini(length/9)
left(120)
if choice == 4:
for y in range (6):
for x in range (2):
Mini(length/27)
right(60)
Mini(length/27)
left(120)
right(180)
for x in range (2):
Mini(length/27)
right(60)
Mini(length/27)
left(120)
if choice == 5:
for a in range (6):
for z in range (2):
for y in range (2):
for x in range (2):
Mini(length/81)
right(60)
Mini(length/81)
left(120)
right(180)
for x in range (2):
Mini(length/81)
right(60)
Mini(length/81)
left(120)
right(180)
right(180)
if choice == 6:
for c in range (6):
for b in range (2):
for a in range (2):
for z in range (2):
for y in range (2):
for x in range (2):
Mini(length/243)
right(60)
Mini(length/243)
left(120)
right(180)
for x in range (2):
Mini(length/243)
right(60)
Mini(length/243)
left(120)
right(180)
right(180)
right(180)
right(180)
if choice == 7:
for a in range (6):
for b in range(2):
for c in range (2):
for d in range (2):
for e in range (2):
for f in range (2):
for y in range (2):
for x in range (2):
Mini(length/729)
right(60)
Mini(length/729)
left(120)
right(180)
for x in range (2):
Mini(length/729)
right(60)
Mini(length/729)
left(120)
right(180)
right(180)
right(180)
right(180)
right(180)
right(180)
我非常感谢您能给我的任何帮助,
但如果您提出不同的方法(例如递归),
请不要只是粘贴代码;相反,提出了一些可以让我朝着正确方向前进的想法。
(该算法适用于专业数学作业)
规格:
Python 2.7.1
Turtle
IDLE
Windows7