详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法


Posted in Python onAugust 30, 2019

前提:

list以及array是python中经常会用到的数据类型,当需要对list以及array进行文件的读写操作的时候,由于write函数参数需要的是一个str,所以这时就需要对list或者array进行str的转换了。

list和array的不同:

在进行转换之间先研究下python中list和array(np.array)的不同:

1、list是python中内置的数据类型,其中的数据的类型可以不相同,如java中List也可以不用相同的数据,但是为了格式的统一,就要用到泛型或者ArrayList。array中的数据类型必须是一样的。

2、list中保存的数据的存放地址,而不是数据,会增加内存的占用,所以存放数据还是尽量使用array。

3、list中有append的方法,可以进行追加,而array没有追加的方法,只能通过np.append来实现追加。

4、在print的时候,打印的结果不同。list元素之间有","分割,而array之间是空格。

list = [1,2,3,4]
arr = np.array(list)
print(list)
print(arr)

[1, 2, 3, 4]
 [1 2 3 4]

1、list转换为str

当list中存放的数据是字符串时,一般是通过str中的join函数进行转换:

list = ['a','b','c','d']
str1 = ''.join(list)
str2 = ' '.join(list)
str3 = '.'.join(list)
print(str1)
print(str2)
print(str3)

abcd
a b c d
a.b.c.d

但是当list中存放的数据是整型数据或者数字的话,需要先将数据转换为字符串再进行转换:

list = [1, 2, 3, 4]
str1 = ''.join([str(x) for x in list])
str2 = ' '.join([str(x) for x in list])
str3 = '.'.join([str(x) for x in list])
print(str1)
print(str2)
print(str3)

1234
1 2 3 4
1.2.3.4

2、array转换为str

将array转换为str和list转换时是一样的,join()函数中的参数是一个iterator,所以array或者list都可以。

list = ['a', 'b', 'c', 'd']
arr = np.array(list)
str = ''.join(arr)
print(str)

abcd

3、str转换为list

在将str转化为list时,主要就是通过str的split()函数,split()参数为空时,默认以空格来做分割。

直接通过list转换时是以每一个字符为分割的。

str1 = 'abcde'
str2 = 'a b c d e'
str3 = 'a, b, c, d, e'
result1 = list(str1)
result2 = str2.split()
result3 = str3.split(', ')
print(result1)
print(result2)
print(result3)

['a', 'b', 'c', 'd', 'e']
['a', 'b', 'c', 'd', 'e']
['a', 'b', 'c', 'd', 'e']

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

Python 相关文章推荐
用python + openpyxl处理excel2007文档思路以及心得
Jul 14 Python
Python实现递归遍历文件夹并删除文件
Apr 18 Python
mac下pycharm设置python版本的图文教程
Jun 13 Python
python判断完全平方数的方法
Nov 13 Python
python用插值法绘制平滑曲线
Feb 19 Python
Python深拷贝与浅拷贝用法实例分析
May 05 Python
Python中变量的输入输出实例代码详解
Jul 28 Python
Python实现隐马尔可夫模型的前向后向算法的示例代码
Dec 31 Python
在Python 的线程中运行协程的方法
Feb 24 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
Mar 25 Python
django列表筛选功能的实现代码
Mar 27 Python
python如何获得list或numpy数组中最大元素对应的索引
Nov 16 Python
python数据持久存储 pickle模块的基本使用方法解析
Aug 30 #Python
python 命令行传入参数实现解析
Aug 30 #Python
Python 在OpenCV里实现仿射变换—坐标变换效果
Aug 30 #Python
python在OpenCV里实现投影变换效果
Aug 30 #Python
python 模拟贷款卡号生成规则过程解析
Aug 30 #Python
Python之数据序列化(json、pickle、shelve)详解
Aug 30 #Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 #Python
You might like
非常精妙的PHP递归调用与静态变量使用
2012/12/16 PHP
ThinkPHP3.1新特性之查询条件预处理简介
2014/06/19 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
PHP基于Redis消息队列实现发布微博的方法
2017/05/03 PHP
PHP使用xpath解析XML的方法详解
2017/05/20 PHP
基于jquery 的一个progressbar widge
2010/10/29 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
javascript实现的简单计时器
2015/07/19 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
2016/09/23 Javascript
Ajax+FormData+javascript实现无刷新表单信息提交
2016/10/24 Javascript
Vue自定义图片懒加载指令v-lazyload详解
2020/12/31 Javascript
JS实现图片预加载之无序预加载功能代码
2017/05/12 Javascript
讲解vue-router之什么是嵌套路由
2018/05/28 Javascript
基于Vue 2.0 监听文本框内容变化及ref的使用说明介绍
2018/08/24 Javascript
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
2018/09/14 Javascript
如何将百度地图包装成Vue的组件的方法步骤
2019/02/12 Javascript
微信小程序HTTP接口请求封装的实现
2019/02/21 Javascript
Vue CLI 2.x搭建vue(目录最全分析)
2019/02/27 Javascript
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
介绍Python中内置的itertools模块
2015/04/29 Python
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
2016/03/30 Python
让python 3支持mysqldb的解决方法
2017/02/14 Python
使用Python进行AES加密和解密的示例代码
2018/02/02 Python
python实现名片管理系统
2018/11/29 Python
python最小生成树kruskal与prim算法详解
2019/01/17 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Python列表嵌套常见坑点及解决方案
2020/09/30 Python
使用BeautifulSoup4解析XML的方法小结
2020/12/07 Python
纯css3(无图片/js)制作的几个社交媒体网站的图标
2013/03/21 HTML / CSS
求∏的近似值,直到最后一项的绝对值小于指定的数
2016/02/12 面试题
写自荐信的注意事项
2014/03/09 职场文书
财务人员担保书
2014/05/13 职场文书
俞敏洪北大演讲稿
2014/05/22 职场文书
最美家庭活动方案
2014/08/31 职场文书
Python Pandas模块实现数据的统计分析的方法
2021/06/24 Python