python - NumPy 数组大小问题

标签 python numpy scipy

我有一个大小为 (3, 3) 的 NumPy array。当我在 __main__ 模块中打印 array 的形状时,我得到了 (3, 3)。但是,我将这个数组传递给一个函数,当我在函数中打印它的大小时,我得到了 (3, )

为什么会这样?

此外,元组的最后一个元素未指定是什么意思?也就是说,(3, ) 不应该首先是一个无效的元组吗?

最佳答案

回答你的第二个问题:

Python 中的元组是 n 维的。那就是你可以有一个 1-2-3-...-n 元组。由于语法原因,您表示 1 维 元组的方式是 ('element',),其中尾随逗号是必需的。如果你有 ('element') 那么这只是括号内的表达式。所以 (3) + 4 == 7,但是 (3,) + 4 == TypeError。同样 ('element') == 'element'.

回答你的第一个问题:

传递数组很可能是你做错了什么。如果不对数组进行某种类型的突变,NumPy 数组就没有理由歪曲自己。

关于python - NumPy 数组大小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15330521/

相关文章:

python - 带有全零的 Numpy 填充 4D 单元

image-processing - 为一系列 2D 电影帧生成频谱图

python - 计算欧氏距离时sklearn.metrics.pairwise_distances_argmin_min的奇怪结果

python - 情节 : one line, 不同颜色

python - XGBoost plot_importance 不显示特征名称

python - 从开始/结束坐标获取 NumPy 切片

python - 动画+在矩阵之间平滑插值

python - 如果缺少连续值,则添加 nan

python - 如何对 google AppEngine Webapp2 URL 进行 SEO Url 更改和重定向?

python - 如何旋转 numpy 数组?