我正在学习python,并在一个测试中,我制作了一个包含数字列表的类,在另一个类中,该类包含一个上一类的列表。在第二堂课中,我编写了一种方法,可以对数字进行数字化处理,但它会将数字x乘以上一堂课的列表长度。
def make_connection(self, number):
if not self.__has_con:
for i in range(number):
self.__weight.append(1)
self.__has_con = True
上面的方法是从第一类开始的,用于获取n个数字。
inp = len(self.__inputs)
for n in self.__hidden:
n.make_connection(inp)
这是来自第二堂课。如果__hidden有9个对象,则对所有9个元素将inp放置9次。
第二类的缩写
def __init__(self, array):
if isinstance(array, list):
if len(array) > 2:
inps = []
hidd = []
outs = []
for i in range(array[0]):
k = kn(kn.INPUT)
inps.append(k)
for i in range(array[len(array)-1]):
k = kn(kn.OUTPUT)
outs.append(k)
a = array[1:]
h = a[:len(a)-1]
if len(h) > 1:
for i in h:
hd = []
for p in range(i):
k = kn(kn.HIDDEN)
hd.append(k)
hidd.append(hd)
else:
for p in range(h[0]):
k = kn(kn.HIDDEN)
hidd.append(k)
self.__inputs = inps
self.__hidden = hidd
self.__output = outs
else:
inps = []
outs = []
for i in range(array[0]):
k = kn(kn.INPUT)
inps.append(k)
for i in range(array[0]):
k = kn(kn.OUTPUT)
outs.append(k)
self.__inputs = inps
self.__output = outs
答案 0 :(得分:1)
Python中的for var in collection
语法使用迭代器。它不是在for循环中指定起始值,增量和终止值,而是循环遍历集合中的所有值。
因此,当您在Python中这样说时:
for x in range(4):
print x
这就像用其他语言这样说:
for (x = 0; x < 4; ++x) {
print(x);
}
在这种情况下,Python的range
返回0..4之上的迭代器。在您的示例中,Python为您提供了集合的每个元素。
有关详情,请参见:https://www.w3schools.com/python/python_iterators.asp
答案 1 :(得分:-1)
在python中使用for循环:
for str in str_list
print (str)