python中数组和列表的简单实例

作者:循环是人递归是神 时间:2021-04-15 20:04:42 

#环境win64+anaconda+python3.6

list & array

(1)list不具有array的全部属性(如维度、转置等)

代码1:

#eg1_1
import numpy as np
a = np.array([[1,2,0,1],[1,6,9,55],[7,8,9,5]])#a为数组
print(a.T)

#Result:
[[ 1  1  7]
[ 2  6  8]
[ 0  9  9]
[ 1 55  5]]

#eg1_2
a = [[1,2,0,1],[1,6,9,55],[7,8,9,5]] #a为列表
print(a.T)

#Result:
'list' object has no attribute 'T'

代码2:

#eg1_3
import numpy as np
a=np.array([[1,2,3],[1,1,4],[1,5,1]])
print(a.shape)

#Result:
(3, 3)

#eg1_4
a=[[1,2,3],[1,1,4],[1,5,1]]
print(a.shape)

#Result
'list' object has no attribute 'shape'

(顺带一提,如何把一个数组转化为列向量:↓)

import numpy as np
a=np.array([[1,2,3],[1,1,4],[1,5,1]])
a=a.reshape(-1,1)
print(a)

#Result:
[[1]
[2]
[3]
[1]
[1]
[4]
[1]
[5]
[1]]

(2)a[:m]的含义,a可以是列表或者数组,但是无论是哪种情况,a[:0]为空

#eg2_1
import numpy as np
a=np.array([[4,1,2],
           [7,4,10],
           [12,17,88]])
#a=np.array([(4,1,2),
#            (7,4,10),
#            (12,17,88)]) 这两个a中[和(不一样,其实它们完全一样
print(a[:0])
print(a[:1])
print(a[:2])

#Result:
[]
[[4 1 2]]
[[ 4  1  2]
[ 7  4 10]]

#eg2_1
a=[(4,1,2),(7,4,10),(12,17,88)]
print(a[:0])
print(a[:1])
print(a[:2])

#Result:
[]
[(4, 1, 2)]
[(4, 1, 2), (7, 4, 10)]

(3)array和list关于“==”的计算

#eg3_1
import numpy as np
a=np.array(['dog','cat','car'])
b=np.array(['dog','cat','trunk'])
acc = (np.mean(a == b))
print(acc)

#Result
0.6666666666666666

#eg3_2
import numpy as np
a=['dog','cat','car']
b=['dog','cat','trunk']
acc = (np.mean(a == b))
print(acc)

#Result
0.0

(4)array和list关于“*”的计算

from numpy import *
#a为数组
a=array([[1,2,3],
  [4,5,6]])
b=4*a
print(b)    

[[ 4  8 12]
[16 20 24]]

from numpy import *
#a为列表
a=([[1,2,3],
  [4,5,6]])
b=4*a
print(b)

[[1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6]]

python列表和Numpy数组的区别

1、二者都可以用于处理多维数组。

Numpy中的ndarray对象用于处理多维数组,它作为一个快速而灵活的大数据容器。Python列表可以存储一维数组,通过列表的嵌套可以实现多维数组。

2、存储效率和输入输出性能不同。

Numpy专门针对数组的操作和运算进行了设计,存储效率和输入输出性能远优于Python中的嵌套列表,数组越大,Numpy的优势就越明显。

3、元素数据类型。

通常,Numpy数组中的所有元素的类型都必须相同的,而Python列表中的元素类型是任意的,所以在通用性能方面Numpy数组不及Python列表,但在科学计算中,可以省掉很多循环语句,代码使用方面比Python列表简单的多。

来源:https://blog.csdn.net/qq_35752161/article/details/83004587

标签:Python,数组,列表
0
投稿

猜你喜欢

  • 网页设计五原则

    2007-11-03 13:50:00
  • python3+selenium获取页面加载的所有静态资源文件链接操作

    2022-11-02 19:18:36
  • Sqlserver 自定义函数 Function使用介绍

    2024-01-16 09:11:36
  • 利用Python破解生日悖论问题

    2022-11-08 02:37:55
  • Python3爬虫里关于Splash负载均衡配置详解

    2022-11-24 22:54:19
  • python 找出list中最大或者最小几个数的索引方法

    2022-08-12 13:23:11
  • Dojo Style Javascript 编程规范

    2007-10-25 17:24:00
  • 一起感受HTML5和CSS3的能量[译]

    2009-09-04 16:29:00
  • JavaScript中的onerror事件概述及使用

    2024-05-03 15:06:39
  • Python入门篇之函数

    2023-03-10 05:41:00
  • 用javascript实现页面无刷新更新数据

    2011-08-14 07:54:08
  • 网站设计趋势: iPhones[译]

    2009-09-21 12:40:00
  • 长文章自动分页类

    2008-09-10 12:11:00
  • CMS不要让MySQL为你流泪

    2008-12-11 14:38:00
  • Python重试库 Tenacity详解(推荐)

    2021-07-07 00:20:09
  • Python tkinter之ComboBox(下拉框)的使用简介

    2021-11-10 02:40:29
  • Javascript Closures (2)

    2009-03-18 12:22:00
  • SQL Server数据转换服务基本概念介绍

    2009-01-20 15:52:00
  • scala中停止循环的三种方式(推荐)

    2023-03-20 07:03:34
  • python 模拟登陆163邮箱

    2021-08-03 09:30:11
  • asp之家 网络编程 m.aspxhome.com