Python list与NumPy array 区分详解


Posted in Python onNovember 06, 2019

1. 数据类型 type()

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Yongqiang Cheng

from __future__ import absolute_import
from __future__ import print_function
from __future__ import division

import os
import sys

sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')
current_directory = os.path.dirname(os.path.abspath(__file__))

import numpy as np
# import tensorflow as tf
import cv2
import time

print(16 * "++--")
print("current_directory:", current_directory)

PIXEL_MEAN = [123.68, 116.779, 103.939] # R, G, B. In TensorFlow, channel is RGB. In OpenCV, channel is BGR.
print("Python list")
print("PIXEL_MEAN:", PIXEL_MEAN)
print("type(PIXEL_MEAN):", type(PIXEL_MEAN))
print("type(PIXEL_MEAN[0]):", type(PIXEL_MEAN[0]), "\n")

PIXEL_MEAN_array = np.array(PIXEL_MEAN)
print("NumPy array")
print("PIXEL_MEAN_array:", PIXEL_MEAN_array)
print("type(PIXEL_MEAN_array):", type(PIXEL_MEAN_array))
print("type(PIXEL_MEAN_array[0]):", type(PIXEL_MEAN_array[0]))
print("PIXEL_MEAN_array.dtype:", PIXEL_MEAN_array.dtype)
/usr/bin/python2.7 /home/strong/tensorflow_work/R2CNN_Faster-RCNN_Tensorflow/yongqiang.py --gpu=0
++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--
current_directory: /home/strong/tensorflow_work/R2CNN_Faster-RCNN_Tensorflow
Python list
PIXEL_MEAN: [123.68, 116.779, 103.939]
type(PIXEL_MEAN): <type 'list'>
type(PIXEL_MEAN[0]): <type 'float'> 

NumPy array
PIXEL_MEAN_array: [123.68 116.779 103.939]
type(PIXEL_MEAN_array): <type 'numpy.ndarray'>
type(PIXEL_MEAN_array[0]): <type 'numpy.float64'>
PIXEL_MEAN_array.dtype: float64

Process finished with exit code 0

2. 数据融合 (data fusion)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Yongqiang Cheng

from __future__ import absolute_import
from __future__ import print_function
from __future__ import division

import os
import sys

sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')
current_directory = os.path.dirname(os.path.abspath(__file__))

import numpy as np
# import tensorflow as tf
import cv2
import time

print(16 * "++--")
print("current_directory:", current_directory)

PIXEL_MEAN = [123.68, 116.779, 103.939] # R, G, B. In TensorFlow, channel is RGB. In OpenCV, channel is BGR.
print("Python list")
print("PIXEL_MEAN:", PIXEL_MEAN)
print("type(PIXEL_MEAN):", type(PIXEL_MEAN))
print("type(PIXEL_MEAN[0]):", type(PIXEL_MEAN[0]), "\n")

PIXEL_MEAN_array = np.array(PIXEL_MEAN)
print("NumPy array")
print("PIXEL_MEAN_array:", PIXEL_MEAN_array)
print("type(PIXEL_MEAN_array):", type(PIXEL_MEAN_array))
print("type(PIXEL_MEAN_array[0]):", type(PIXEL_MEAN_array[0]))
print("PIXEL_MEAN_array.dtype:", PIXEL_MEAN_array.dtype, "\n")

image_array = np.array(
  [[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]], [[21, 22, 23], [24, 25, 26], [27, 28, 29], [30, 31, 32]]])
print("image_array:", image_array)
print("type(image_array):", type(image_array))
print("type(image_array[0]):", type(image_array[0]))
print("image_array.dtype:", image_array.dtype, "\n")

image_array_fusion = image_array + np.array(PIXEL_MEAN)
print("image_array_fusion:", image_array_fusion)
print("type(image_array_fusion):", type(image_array_fusion))
print("type(image_array_fusion[0]):", type(image_array_fusion[0]))
print("image_array_fusion.dtype:", image_array_fusion.dtype)
/usr/bin/python2.7 /home/strong/tensorflow_work/R2CNN_Faster-RCNN_Tensorflow/yongqiang.py --gpu=0
++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--
current_directory: /home/strong/tensorflow_work/R2CNN_Faster-RCNN_Tensorflow
Python list
PIXEL_MEAN: [123.68, 116.779, 103.939]
type(PIXEL_MEAN): <type 'list'>
type(PIXEL_MEAN[0]): <type 'float'> 

NumPy array
PIXEL_MEAN_array: [123.68 116.779 103.939]
type(PIXEL_MEAN_array): <type 'numpy.ndarray'>
type(PIXEL_MEAN_array[0]): <type 'numpy.float64'>
PIXEL_MEAN_array.dtype: float64 

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

 [[21 22 23]
 [24 25 26]
 [27 28 29]
 [30 31 32]]]
type(image_array): <type 'numpy.ndarray'>
type(image_array[0]): <type 'numpy.ndarray'>
image_array.dtype: int64 

image_array_fusion: [[[124.68 118.779 106.939]
 [127.68 121.779 109.939]
 [130.68 124.779 112.939]
 [133.68 127.779 115.939]]

 [[144.68 138.779 126.939]
 [147.68 141.779 129.939]
 [150.68 144.779 132.939]
 [153.68 147.779 135.939]]]
type(image_array_fusion): <type 'numpy.ndarray'>
type(image_array_fusion[0]): <type 'numpy.ndarray'>
image_array_fusion.dtype: float64

Process finished with exit code 0

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
对于Python的框架中一些会话程序的管理
Apr 20 Python
Python中函数参数设置及使用的学习笔记
May 03 Python
python:socket传输大文件示例
Jan 18 Python
Python3使用PyQt5制作简单的画板/手写板实例
Oct 19 Python
Python cookbook(数据结构与算法)实现查找两个字典相同点的方法
Feb 18 Python
Python读取excel中的图片完美解决方法
Jul 27 Python
浅谈Python中(&amp;,|)和(and,or)之间的区别
Aug 07 Python
python 函数的缺省参数使用注意事项分析
Sep 17 Python
python3.8 微信发送服务器监控报警消息代码实现
Nov 05 Python
pytorch中的上采样以及各种反操作,求逆操作详解
Jan 03 Python
Ubuntu中配置TensorFlow使用环境的方法
Apr 21 Python
关于python中readlines函数的参数hint的相关知识总结
Jun 24 Python
Django实现WebSSH操作物理机或虚拟机的方法
Nov 06 #Python
django 简单实现登录验证给你
Nov 06 #Python
Python数据可视化:箱线图多种库画法
Nov 06 #Python
使用Python完成15位18位身份证的互转功能
Nov 06 #Python
python3.8 微信发送服务器监控报警消息代码实现
Nov 05 #Python
python SVD压缩图像的实现代码
Nov 05 #Python
Django REST框架创建一个简单的Api实例讲解
Nov 05 #Python
You might like
PHP cdata 处理(详细介绍)
2013/07/05 PHP
JavaScript Event学习第九章 鼠标事件
2010/02/08 Javascript
Dojo 学习要点
2010/09/03 Javascript
基于jquery DOM写的类似微博发布的效果
2012/10/20 Javascript
javascript中的throttle和debounce浅析
2014/06/06 Javascript
jQuery实现精美的多级下拉菜单特效
2015/03/14 Javascript
JavaScript编写Chrome扩展实现与浏览器的交互及时间通知
2016/05/16 Javascript
使用jQuery.Qrcode插件在客户端动态生成二维码并添加自定义Logo
2016/09/01 Javascript
jQuery实现的背景颜色渐变动画效果示例
2017/03/24 jQuery
JavaScript高阶函数_动力节点Java学院整理
2017/06/28 Javascript
vue.js学习之vue-cli定制脚手架详解
2017/07/02 Javascript
Angular.js ng-file-upload结合springMVC的使用教程
2017/07/10 Javascript
javascript字体颜色控件的开发 JS实现字体控制
2017/11/27 Javascript
Vue项目数据动态过滤实践及实现思路
2018/09/11 Javascript
JavaScript刷新页面的几种方法总结
2019/03/28 Javascript
详解vue配置后台接口方式
2019/03/29 Javascript
使用webpack将ES6转化ES5的实现方法
2019/10/13 Javascript
vue实现拖拽效果
2019/12/23 Javascript
JavaScript通如何过RGraph实现动态仪表盘
2020/10/15 Javascript
[01:58]DOTA2上海特级锦标赛现场采访:RTZ这个ID到底好不好
2016/03/25 DOTA
tornado框架blog模块分析与使用
2013/11/21 Python
django解决跨域请求的问题
2018/11/11 Python
django数据关系一对多、多对多模型、自关联的建立
2019/07/24 Python
用python3 urllib破解有道翻译反爬虫机制详解
2019/08/14 Python
如何通过Django使用本地css/js文件
2020/01/20 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
多个版本的python共存时使用pip的正确做法
2020/10/26 Python
css3弹性盒模型(Flexbox)详细介绍
2014/10/08 HTML / CSS
澳大利亚领先的宠物用品商店:VetSupply
2017/09/08 全球购物
荷兰睡眠专家:Beter Bed
2020/11/23 全球购物
如何利用find命令查找文件
2015/02/07 面试题
大学生入党推荐书范文
2014/05/17 职场文书
2015年志愿者服务工作总结
2015/04/20 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
Django与数据库交互的实现
2021/06/03 Python
MySQL创建定时任务
2022/01/22 MySQL