我有一个接受参数NBins的函数.我想用标量50或数组[0, 10, 20, 30]调用这个函数.如何在函数中识别NBins的长度?或者换个说法,如果它是标量还是向量?

我试过这个:

>>> N=[2,3,5]
>>> P = 5
>>> len(N)
3
>>> len(P)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: object of type 'int' has no len()
>>> 

如你所见,我不能将len应用于P,因为它不是array....python中有isarrayisscalar之类的东西吗?

谢谢

推荐答案

>>> isinstance([0, 10, 20, 30], list)
True
>>> isinstance(50, list)
False

要支持任何类型的序列,请 Select collections.Sequence而不是list.

note:isinstance还支持类的元组,应该避免使用check type(x) in (..., ...),这是不必要的.

你可能还想查not isinstance(x, (str, unicode))

Python相关问答推荐

在Python中对分层父/子列表进行排序

Select 用a和i标签包裹的复选框?

根据另一列中的nan重置值后重新加权Pandas列

为什么我的Python代码在if-else声明中的行之前执行if-else声明中的行?

追溯(最近最后一次调用):文件C:\Users\Diplom/PycharmProject\Yolo01\Roboflow-4.py,第4行,在模块导入roboflow中

运行终端命令时出现问题:pip start anonymous"

将图像拖到另一个图像

Django REST Framework:无法正确地将值注释到多对多模型,不断得到错误字段名称字段对模型无效'<><>

如何使用scipy的curve_fit与约束,其中拟合的曲线总是在观测值之下?

如何使用Pandas DataFrame按日期和项目汇总计数作为列标题

在不同的帧B中判断帧A中的子字符串,每个帧的大小不同

在Python中使用yaml渲染(多行字符串)

如何在Gekko中使用分层条件约束

获取git修订版中每个文件的最后修改时间的最有效方法是什么?

Pandas在rame中在组内洗牌行,保持相对组的顺序不变,

将字节序列解码为Unicode字符串

随机森林n_估计器的计算

文本溢出了Kivy的视区

使用pythonminidom过滤XML文件

使用美汤对维基百科表格进行网络刮擦未返回任何内容