詳細(xì)整理python 字符串(str)與列表(list)以及數(shù)組(array)之間的轉(zhuǎn)換方法
前提:
list以及array是python中經(jīng)常會(huì)用到的數(shù)據(jù)類型,當(dāng)需要對(duì)list以及array進(jìn)行文件的讀寫操作的時(shí)候,由于write函數(shù)參數(shù)需要的是一個(gè)str,所以這時(shí)就需要對(duì)list或者array進(jìn)行str的轉(zhuǎn)換了。
list和array的不同:
在進(jìn)行轉(zhuǎn)換之間先研究下python中l(wèi)ist和array(np.array)的不同:
1、list是python中內(nèi)置的數(shù)據(jù)類型,其中的數(shù)據(jù)的類型可以不相同,如java中List也可以不用相同的數(shù)據(jù),但是為了格式的統(tǒng)一,就要用到泛型或者ArrayList。array中的數(shù)據(jù)類型必須是一樣的。
2、list中保存的數(shù)據(jù)的存放地址,而不是數(shù)據(jù),會(huì)增加內(nèi)存的占用,所以存放數(shù)據(jù)還是盡量使用array。
3、list中有append的方法,可以進(jìn)行追加,而array沒有追加的方法,只能通過np.append來實(shí)現(xiàn)追加。
4、在print的時(shí)候,打印的結(jié)果不同。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轉(zhuǎn)換為str
當(dāng)list中存放的數(shù)據(jù)是字符串時(shí),一般是通過str中的join函數(shù)進(jìn)行轉(zhuǎn)換:
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
但是當(dāng)list中存放的數(shù)據(jù)是整型數(shù)據(jù)或者數(shù)字的話,需要先將數(shù)據(jù)轉(zhuǎn)換為字符串再進(jìn)行轉(zhuǎn)換:
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轉(zhuǎn)換為str
將array轉(zhuǎn)換為str和list轉(zhuǎn)換時(shí)是一樣的,join()函數(shù)中的參數(shù)是一個(gè)iterator,所以array或者list都可以。
list = ['a', 'b', 'c', 'd'] arr = np.array(list) str = ''.join(arr) print(str)
abcd
3、str轉(zhuǎn)換為list
在將str轉(zhuǎn)化為list時(shí),主要就是通過str的split()函數(shù),split()參數(shù)為空時(shí),默認(rèn)以空格來做分割。
直接通過list轉(zhuǎn)換時(shí)是以每一個(gè)字符為分割的。
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']
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python 如何利用argparse解析命令行參數(shù)
這篇文章主要介紹了python 利用argparse解析命令行參數(shù)的步驟,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2020-09-09
使用Python第三方庫(kù)xlrd讀取Excel中的數(shù)據(jù)的流程步驟
這篇文章主要給大家介紹了使用Python第三方庫(kù)xlrd讀取Excel中的數(shù)據(jù)的流程步驟,文中通過代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-12-12
python?pyaudio音頻錄制的實(shí)現(xiàn)
這篇文章主要介紹了python?pyaudio音頻錄制的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
python查找指定文件夾下所有文件并按修改時(shí)間倒序排列的方法
使用Mixin設(shè)計(jì)模式進(jìn)行Python編程的方法講解
基于Python實(shí)現(xiàn)五子棋-(人機(jī)對(duì)戰(zhàn))
Pytorch使用shuffle打亂數(shù)據(jù)的操作

