python实现将读入的多维list转为一维list的方法


Posted in Python onJune 28, 2018

第一种:使用extend()

>>> lines = open('test.txt').readlines()
>>> lines
['1\n', '2\n', '3\n', '4,5\n']
>>> for line in lines:
...  ll.extend(line.strip().split(','))
... 
>>> ll
['1', '2', '3', '4', '5']

第二种:使用+

>>> ll = []
>>> lines = open('test.txt').readlines()
>>> lines
['1\n', '2\n', '3\n', '4,5\n']
>>> for line in lines:
...  ll = ll + line.strip().split(',')
... 
>>> ll
['1', '2', '3', '4', '5']

第三种:使用flat array数组的自带方法

>>> ll = []
>>> lines = open('test.txt').readlines()
>>> for line in lines:
...  ll.append(line.strip().split(','))
... 
>>> ll = np.array(ll)
>>> np.hstack(ll.flat)
array(['1', '2', '3', '4', '5'], 
  dtype='|S1')
>>> list(np.hstack(ll.flat))
['1', '2', '3', '4', '5']

总结:

1. extend()与append()的区别

append()可以接受任何数据类型和格式的数据作为一个元素插入原list

extend() 则仅能将任何数据类型和格式的数据展开作为一组元素插入原list

eg.

>>> a = [1,'a']
>>> a.extend(np.array([2,'b']))
>>> a
[1, 'a', '2', 'b']
>>> a.extend([3,['c']])
>>> a
[1, 'a', '2', 'b', 3, ['c']]
>>> a = [1,'a']
>>> a.extend(np.array([2,'b']))
>>> a
[1, 'a', '2', 'b']
>>> a.extend([3,['c']])
>>> a
[1, 'a', '2', 'b', 3, ['c']]
>>> a = [1,'a']
>>> a.append(np.array([2,'b']))
>>> a
[1, 'a', array(['2', 'b'], 
  dtype='|S21')]
>>> a.append([3,['c']])
>>> a
[1, 'a', array(['2', 'b'], 
  dtype='|S21'), [3, ['c']]]

2. flatten()无法对dtype = object的array进行展开,dtype = object说明array中的元素是list,即其不是满矩阵结构

eg.

>>> a = np.array([[1,2],[3,4]])
>>> a.dtype
dtype('int64')
>>> a.flatten()
array([1, 2, 3, 4])
>>> 
>>> a = np.array([[1,2],[3,4],[5]])
>>> a.flatten()
array([[1, 2], [3, 4], [5]], dtype=object)

3.readlines读取文件默认str,可以通过map转换数据类型

eg.

>>> ll = []
>>> lines = open('test.txt').readlines()
>>> lines
['1\n', '2\n', '3\n', '4,5\n']
>>> for line in lines:
...  ll.append(map(int,line.strip().split(',')))
... 
>>> ll
[[1], [2], [3], [4, 5]]

以上这篇python实现将读入的多维list转为一维list的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
web.py在模板中输出美元符号的方法
Aug 26 Python
python文件与目录操作实例详解
Feb 22 Python
Python实现约瑟夫环问题的方法
May 03 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
解决每次打开pycharm直接进入项目的问题
Oct 28 Python
python的sorted用法详解
Jun 25 Python
python中for循环把字符串或者字典添加到列表的方法
Jul 20 Python
pytorch中tensor张量数据类型的转化方式
Dec 31 Python
Python通过VGG16模型实现图像风格转换操作详解
Jan 16 Python
python的reverse函数翻转结果为None的问题
May 11 Python
Pytorch 扩展Tensor维度、压缩Tensor维度的方法
Sep 09 Python
python单向链表实例详解
May 25 Python
numpy matrix和array的乘和加实例
Jun 28 #Python
python 按不同维度求和,最值,均值的实例
Jun 28 #Python
python 列表,数组和矩阵sum的用法及区别介绍
Jun 28 #Python
python 列表降维的实例讲解
Jun 28 #Python
基于Python中求和函数sum的用法详解
Jun 28 #Python
Python之list对应元素求和的方法
Jun 28 #Python
Python读取txt文件数据的方法(用于接口自动化参数化数据)
Jun 27 #Python
You might like
PHP动态变静态原理
2006/11/25 PHP
PHP 中英文混合排版中处理字符串常用的函数
2007/04/12 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
2013/06/20 PHP
php实现将base64格式图片保存在指定目录的方法
2016/10/13 PHP
动态添加js事件实现代码
2009/03/12 Javascript
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
jQuery技巧总结
2011/01/01 Javascript
基于jquery的点击链接插入链接内容的代码
2012/07/31 Javascript
JavaScript定时器详解及实例
2013/08/01 Javascript
使用ajax+jqtransform实现动态加载select
2014/12/01 Javascript
Angularjs CURD 详解及实例代码
2016/09/14 Javascript
jQuery自定义插件详解及实例代码
2016/12/29 Javascript
微信小程序图片选择、上传到服务器、预览(PHP)实现实例
2017/05/11 Javascript
微信小程序 支付功能实现PHP实例详解
2017/05/12 Javascript
VUE Error: getaddrinfo ENOTFOUND localhost
2018/05/03 Javascript
AngularJS日期格式化常见操作实例分析
2018/05/17 Javascript
js中Array对象的常用遍历方法详解
2019/01/17 Javascript
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
python获取mp3文件信息的方法
2015/06/15 Python
Python读取指定目录下指定后缀文件并保存为docx
2017/04/23 Python
解决python3在anaconda下安装caffe失败的问题
2017/06/15 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
2018/01/02 Python
Python父目录、子目录的相互调用方法
2019/02/16 Python
Python常用编译器原理及特点解析
2020/03/23 Python
python Paramiko使用示例
2020/09/21 Python
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
日语翻译个人求职的自我评价
2013/10/14 职场文书
大学生实习自我鉴定
2013/12/11 职场文书
自动化专业职业生涯规划书范文
2014/01/16 职场文书
课内比教学心得体会
2014/09/09 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
志愿者个人总结
2015/03/03 职场文书
婚礼父母致辞
2015/07/28 职场文书
SpringDataJPA实体类关系映射配置方式
2021/12/06 Java/Android
SQL Server中使用表变量和临时表
2022/05/20 SQL Server