Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 打印列表中非字符串类型的对象_Python - Fatal编程技术网

Python 打印列表中非字符串类型的对象

Python 打印列表中非字符串类型的对象,python,Python,我正在尝试使用SVC类型的一些对象创建一个数组。我得到下面显示的消息。我尝试了不同的方法,还使用了np.array([svc\u lin,svc\u poly,svc\u sig])(其中np是numpy),这会产生类似的错误 有没有一种方法可以实现我正在尝试的这类对象(可能是另一个合适的数组?我对python完全陌生,所以我知道的不多 谢谢你的帮助 from sklearn.svm import SVC svc_lin = SVC(kernel='linear') svc_poly = SV

我正在尝试使用SVC类型的一些对象创建一个数组。我得到下面显示的消息。我尝试了不同的方法,还使用了
np.array([svc\u lin,svc\u poly,svc\u sig])
(其中np是
numpy
),这会产生类似的错误

有没有一种方法可以实现我正在尝试的这类对象(可能是另一个合适的数组?我对python完全陌生,所以我知道的不多

谢谢你的帮助

from sklearn.svm import SVC

svc_lin = SVC(kernel='linear')
svc_poly = SVC(kernel='poly')
svc_sig = SVC(kernel='sigmoid')

arL = [svc_lin, svc_poly, svc_sig]

for x in arL: 
    #start=time.time()
    print(arL[x])
我收到一条错误消息

Traceback (most recent call last): 
File "<stdin>", line 3, in <module>
TypeError: list indices must be integers or slices, not SVC  
回溯(最近一次呼叫最后一次):
文件“”,第3行,在
TypeError:列表索引必须是整数或片,而不是SVC

难道你不想打印(x)?
x
不是序列中的索引,而是对象/元素本身。如果你在l中为x循环
,那么
x
已经是元素了。如果你在范围(len(l))中为i循环
,那么
i
就是索引,然后你需要执行
l[i]
你们说得对。这就是问题所在。我想我需要打印那个索引上的内容。我还有很多东西要学。Thanks@user1960836-范围内i的
的主要问题(len(…)
是指它只支持已知长度的集合。这意味着它对于生成器是无效的。它还要求您在每次迭代中对集合进行额外的查找(
l[i]
行)。当您对枚举(…)中的idx、elem使用
时,此查找是不必要的
因为
idx
elem
已经分配给索引和相应的对象。它更干净、更简洁,并且支持更多的集合类型。@g.d.d.c我没有建议。我试图显示差异,因为OP使用的是
arL[x]
。因此,这与
用于范围…
。但我绝对建议使用简单的
用于l
循环中的x,或者可能使用
枚举
。。。