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 相关文章推荐
Python实现网络端口转发和重定向的方法
Sep 19 Python
对pandas replace函数的使用方法小结
May 18 Python
python实现顺序表的简单代码
Sep 28 Python
Python正则表达式指南 推荐
Oct 09 Python
利用python脚本如何简化jar操作命令
Feb 24 Python
详解用python自制微信机器人,定时发送天气预报
Mar 25 Python
Django的用户模块与权限系统的示例代码
Jul 24 Python
django项目环境搭建及在虚拟机本地创建django项目的教程
Aug 02 Python
Python文件操作函数用法实例详解
Dec 24 Python
基于Python计算圆周率pi代码实例
Mar 25 Python
基于python生成英文版词云图代码实例
May 16 Python
python tqdm实现进度条的示例代码
Nov 10 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 mssql 日期出现中文字符的解决方法
2009/03/10 PHP
如何使用php输出时间格式
2013/08/31 PHP
ThinkPHP模板判断输出Defined标签用法详解
2014/06/30 PHP
基于PHP+jQuery+MySql实现红蓝(顶踩)投票代码
2015/08/25 PHP
PHP实现二维数组中的查找算法小结
2018/06/09 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
javascript时区函数介绍
2012/09/14 Javascript
如何正确理解javascript的模块化
2017/03/02 Javascript
JavaScript调试之console.log调试的一个小技巧分享
2017/08/07 Javascript
bootstrap可编辑下拉框jquery.editable-select
2017/10/12 jQuery
node.js用fs.rename强制重命名或移动文件夹的方法
2017/12/27 Javascript
Vue项目引发的「过滤器」使用教程
2019/03/12 Javascript
Vue中axios拦截器如何单独配置token
2019/12/27 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
重命名批处理python脚本
2013/04/05 Python
python修改list中所有元素类型的三种方法
2018/04/09 Python
十分钟利用Python制作属于你自己的个性logo
2018/05/07 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
python3中zip()函数使用详解
2018/06/29 Python
python 不以科学计数法输出的方法
2018/07/16 Python
python利用小波分析进行特征提取的实例
2019/01/09 Python
tensorflow实现测试时读取任意指定的check point的网络参数
2020/01/21 Python
你应该知道的Python3.6、3.7、3.8新特性小结
2020/05/12 Python
django教程如何自学
2020/07/31 Python
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
美国战术品牌:5.11 Tactical
2019/05/01 全球购物
英国老牌潮鞋店:Offspring
2019/08/19 全球购物
SQL中where和having的区别
2012/06/17 面试题
农村婚礼证婚词
2014/01/08 职场文书
毕业设计计划书
2014/01/09 职场文书
八一建军节演讲稿
2014/09/10 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书
2015年小学语文教师工作总结
2015/10/23 职场文书
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript
nginx常用配置conf的示例代码详解
2022/03/21 Servers