numpy中字串儲存的位數問題

2021-10-05 06:18:31 字數 610 閱讀 2556

位數被截了

首先有個array  a 

a= np.array(list_a, dtype=bytes)

a.dtype

out: dtype('s23')

23就是list_a裡最長的字串

然後有個array b

b = np.array(list_b, dtype=bytes)

b.dtype

out: dtype('s31')

同理,31就是list_b裡最長的字串

現在需要把b插入a,或直接替換a中的列,會導致b的字串位數變少,直接截成23位

因此,可以在讀取a的時候把位數設到確保夠大

string:  

a = np.array(list_a, dtype='s100')
unicode: 

a = np.array(list_a, dtype='u100')
可能會導致記憶體占用增加,但沒找到更好的解決方式

dype相關使用可以參考

NumPy字串速查表

字串 函式描述 add 對兩個陣列的逐個字串元素進行連線 multiply 返回按元素多重連線後的字串 center 居中字串 capitalize 將字串第乙個字母轉換為大寫 title 將字串的每個單詞的第乙個字母轉換為大寫 lower 陣列元素轉換為小寫 upper 陣列元素轉換為大寫 spl...

在有空字串的有序字串陣列中查詢 有點問題

存在乙個排序後的字串陣列,其中散布著一些空字串。根據使用者輸入的字串進行索引。例如,有序字串陣列。方法1 二分查詢,迭代方式 a a ac ad b ba b input x 0y len a 1 while 1 0 跟二分查詢的 一樣,只不過增加乙個判斷。判斷a item 是否是空串,若是空串,則...

常量字串,字串變數 儲存位置

注意 指標方式建立的字元陣列,是常量字串,指標指向的內容是沒法更改的 方括號 方式建立的字元陣列僅僅是變數,內容可以更改。string 物件沒有 0 char text 字串陣列若沒有 0 只能當做陣列處理,若有 0 可以看做字串,可以cou 字串陣列 用字串初始化字元陣列時,或是char型指標指向...