前提:
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']
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

