本菜最近师命难违,在别人享受大四生活的同时不得不学习代码,搞搞DL。python基础差实在是难受,本菜记忆力和金鱼差不多,故写下这些小知识点以便常常复习之用,希望大佬看到不要踩我

python中常见的二维数组有list与numpy.array。在很多情况下我们需要获取数组的大小,阅读过一些python代码可以发现,常见的方法一般有len, size, shape这三种,那么这三种方法分别应用于那些场合?有什么区别?

import numpy as np

a = [[1,2,3,4], [5,6,7,8], [9, 10, 11, 12]]

b = np.array(a)

print type(a)

print a

print type(b)

print b

[[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]

[[ 1 2 3 4]

[ 5 6 7 8]

[ 9 10 11 12]]

list

list---len

print len(a), len(a[0])

3 4

---------------------------------------------------------------------------

NameError Traceback (most recent call last)

in ()

1 print len(a), len(a[0])

----> 2 print size(a)

NameError: name 'size' is not defined

list---size

print size(a)

---------------------------------------------------------------------------

NameError Traceback (most recent call last)

in ()

----> 1 print size(a)

NameError: name 'size' is not defined

In [6]:

print a.size

---------------------------------------------------------------------------

AttributeError Traceback (most recent call last)

in ()

----> 1 print a.size

AttributeError: 'list' object has no attribute 'size'

list---shape

print shape(a)

---------------------------------------------------------------------------

NameError Traceback (most recent call last)

in ()

----> 1 print shape(a)

NameError: name 'shape' is not defined

In [8]:

print a.shape

---------------------------------------------------------------------------

AttributeError Traceback (most recent call last)

in ()

----> 1 print a.shape

AttributeError: 'list' object has no attribute 'shape'

由上可知,list只支持len(), 该方法实际是调用了对象的len(self)方法

numpy.array

对比之下,numpy.array同时支持len, size, shape, 注意看三者返回值的区别。

此外,numpy中还提供matrix的数据类型,具体请看:

c = np.mat(a)

print type(c)

print c

d = np.mat(b)

print type(d)

print d

print len(d)

print d.size

print d.shape

[[ 1 2 3 4]

[ 5 6 7 8]

[ 9 10 11 12]]

[[ 1 2 3 4]

[ 5 6 7 8]

[ 9 10 11 12]]

3

12

(3, 4)

从上面的例子可以看出,martix支持由list和numpy.array创建,同时支持len, size以及shape.

python查看list的shape_列表list、数组np.array等的len,size,shape操作相关推荐

  1. Python风格总结:翻转列表、数组

    list.reverse() 该方法没有返回值,但是会对列表的元素进行反向排序. reversed(list) reversed 函数返回一个反转的迭代器.list为转换的序列,可以是 tuple, ...

  2. 从Python列表创建数组

    首先,可以用 np.array 从 Python 列表创建数组: # 整型数组: np.array([1, 4, 2, 5, 3]) 得到如下结果: array([1, 4, 2, 5, 3]) 请记 ...

  3. Python入门之玩转列表-第4关:列表切片:你的菜单和我的菜单

    任务描述 我们在前三关中学习了如何处理单个列表元素和所有列表元素,在这一关中我们还将学习如何处理部分列表元素--Python中称为切片. 例如,当我们去餐馆吃饭点菜时,你的菜单和我的菜单有些时候是一模 ...

  4. (python numpy) np.array.shape 中 (3,)、(3,1)、(1,3)的区别

    (python numpy) np.array.shape 中 (3,).(3,1).(1,3)的区别 被人问到这个问题,就记录一下吧 1. (3,) (3,)是[x,y,z][x,y,z][x,y, ...

  5. python列表(数组)

    python列表(数组) 列表(list)  就是 数组 - 列表是Python中的一个对象 - 对象(object)就是内存中专门用来存储数据的一块区域 - 之前我们学习的对象,像数值,它只能保存一 ...

  6. python和R数据类型查看、赋值、列表、for循环、函数用法对比示例

    python和R数据类型查看.赋值.列表.for循环.函数用法对比示例 很多工程师可能刚开始的时候只熟悉python或者R其中的一个进行数据科学相关的任务. 那么如果我们对比这学习可以快速了解语言设计 ...

  7. python中列表元素类型可以不同吗_list列表等同于数组,是一种放数据的容器

    前言 在python中,list列表数据类型其实就是一个容器,可以放置大量元素的集合.同时,list列表也有很多特点和使用场景,本文主要讲解list列表的函数方法. 概念 list列表是一个集合,一个 ...

  8. python创建二维空列表_python定义二维空数组

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 稀疏矩阵的格式存储矩阵的一般方法是采用二维数组,其优点是可以随机地访问每一个元素 ...

  9. python的列表就是数组吗_python中list和数组的区别是什么?

    在python中,list和数组的区别是:1.list中的元素的数据类型可以不一样,数组中的元素的数据类型必须一样:2.list不可以进行四则运算,数组可以进行四则运算. list和array的区别 ...

  10. python随机生成二维列表_对python产生随机的二维数组实例详解

    对python产生随机的二维数组实例详解 最近找遍了python的各个函数发现无法直接生成随机的二维数组,其中包括random()相关的各种方法,都没有得到想要的结果.最后在一篇博客中受到启发,通过列 ...

最新文章

  1. CYQ.Data 数据框架系列索引
  2. html调试模式查看data数据库,接口调试:在线sql语句查看与性能优化
  3. 网站QQ全屏PHP代码,QQ技术导航升级版 超级导航美化版带后台版 PHP源码
  4. springboot启动后卡住 无日志的几种情况
  5. IOS炫酷的引导界面
  6. mysql怎样在bat脚本中添加日志_如何在windows下用bat脚本定时备份mysql
  7. 提高openfire最大连接数
  8. 基于ssm宠物医院管理系统获取(java毕业设计)
  9. 微型计算机原理与接口技术课后答案,微机原理与接口技术-课后习题答案
  10. html 设置整体字体,html font标签如何设置字体样式
  11. google和baidu搜索命令
  12. 解决Web部署 svg/woff/woff2字体 404错误(转)
  13. 小黄鸡 php,小黄鸡simsimi接口
  14. 【RQNOJ】460 诺诺的队列
  15. 生物化学 药物设计与研发笔记:变构(Allostery)药物设计
  16. 更改cadence617 schematic和visualizationAnalysis界面背景颜色
  17. Android 屏幕刷新机制 VSync+Choreographer
  18. 论文笔记:基于并行注意力 UNet的裂缝检测方法
  19. CSS - 移动端布局(一)关键的前置知识
  20. PSI-Blast最新版单机安装,批量生成Pssm打分矩阵

热门文章

  1. banner设圆角_com.youth.banner.Banner 使用glide加载圆角图片无效
  2. .prettierrc文件的作用
  3. 滴滴打车CTO张博:下一阶段重点机器学习
  4. Python设置32位环境
  5. LMV324MTX单通道,双通道和四通道通用低电压轨至轨输出运算放大器TI
  6. Python学习日记04
  7. 曲卉:高阶增长黑客实战营
  8. 寻中华文化之根 承抗战先烈之志
  9. 外国人在中国工作要交社保吗?
  10. Learn Git Branching 笔记