我无法弄清楚如何重复这段代码。该代码适用于我正在开发的初始遗传算法函数。我是一个极端的代码业余爱好者,所以如果它是愚蠢的,对不起。 :)如何让遗传算法的这些实现重复?
我觉得我很接近,我有三种代码的变体,这两种变体都不是那里的,但是比较接近(......也许......)。
这里是变化1我的代码:
population_size = int(raw_input('Enter a population size:'))
def make_organism(length):
from random import randint
length = int(raw_input('Enter an organism length:'))
org = []
for i in range(length):
var = randint(0, 1)
org.append(var)
new_org = []
for length in range(population_size):
var_2 = randint(0, 1)
new_org.append(var_2)
print new_org
此代码返回正确的人口,但不正确的长度。
例:
Enter a population size: 3
Enter an organism length: 4
[0]
[0, 0]
[0, 0, 0]
变化2我的代码:
population_size = int(raw_input('Enter a population size:'))
def make_organism(length):
from random import randint
length = int(raw_input('Enter an organism length:'))
org = []
for i in range(length):
var = randint(0, 1)
org.append(var)
new_org = []
for length in range(population_size):
var = randint(0, 1)
org.append(length)
print new_org
此代码返回正确的人口,但不返回括号任何东西。打印new_org
的次数与population_size
相同。
例:
Enter a population size: 3
Enter an organism length: 4
[]
[]
[]
变化3:
population_size = int(raw_input('Enter a population size:'))
def make_organism(length):
from random import randint
length = int(raw_input('Enter an organism length:'))
org = []
for i in range(length):
var = randint(0, 1)
org.append(var)
print org
此代码将返回正确长度的代码而不是人口规模是正确的。
例:
Enter a population size: 3
Enter an organism length: 4
[0, 1, 0, 1]
orgs
是表示为空列表的生物体。该代码根据位长度生成0和1的随机数字模式,并且应该返回与用户输入群体大小一样多的随机列表。
我认为你的代码的格式是错误的。添加空格以使其正确。 –
空白是正确的,代码工作只是返回错误的输出。如果空白不正确,我会收到语法错误。 – tony
将您在问题中编写的内容复制到编辑器中并编译它会在第一个randint中引发错误。我确定你有什么作品,但是当你复制你的问题时,你并没有保持格式。另外,你在哪里打电话make_organism? –