NumPy字串函數

NumPy - 字串函數

以下函數用於對dtypenumpy.string_numpy.unicode_的數組執行向量化字串操作。 它們基於 Python 內置庫中的標準字串函數。

序號 函數及描述
1. add() 返回兩個strUnicode數組的逐個字串連接
2. multiply() 返回按元素多重連接後的字串
3. center() 返回給定字串的副本,其中元素位於特定字串的中央
4. capitalize() 返回給定字串的副本,其中只有第一個字串大寫
5. title() 返回字串或 Unicode 的按元素標題轉換版本
6. lower() 返回一個數組,其元素轉換為小寫
7. upper() 返回一個數組,其元素轉換為大寫
8. split() 返回字串中的單詞列表,並使用分隔符號來分割
9. splitlines() 返回元素中的行列表,以換行符分割
10. strip() 返回數組副本,其中元素移除了開頭或者結尾處的特定字元
11. join() 返回一個字串,它是序列中字串的連接
12. replace() 返回字串的副本,其中所有子字串的出現位置都被新字串取代
13. decode() 按元素調用str.decode
14. encode() 按元素調用str.encode

這些函數在字元數組類(numpy.char)中定義。 較舊的 Numarray 包包含chararray類。 numpy.char類中的上述函數在執行向量化字串操作時非常有用。

numpy.char.add()

函數執行按元素的字串連接。

import numpy as np
print '連接兩個字串:'
print np.char.add(['hello'],[' xyz'])
print '\n'

print '連接示例:'
print np.char.add(['hello', 'hi'],[' abc', ' xyz'])

輸出如下:

連接兩個字串:
['hello xyz']

連接示例:

['hello abc' 'hi xyz']

numpy.char.multiply()

這個函數執行多重連接。

import numpy as np
print np.char.multiply('Hello ',3)

輸出如下:

Hello Hello Hello

numpy.char.center()

此函數返回所需寬度的數組,以便輸入字串位於中心,並使用fillchar在左側和右側進行填充。

import numpy as np
# np.char.center(arr, width,fillchar)
print np.char.center('hello', 20,fillchar = '*')

輸出如下:

*******hello********

numpy.char.capitalize()

函數返回字串的副本,其中第一個字母大寫

import numpy as np
print np.char.capitalize('hello world')

輸出如下:

Hello world

numpy.char.title()

返回輸入字串的按元素標題轉換版本,其中每個單詞的首字母都大寫。

import numpy as np
print np.char.title('hello how are you?')

輸出如下:

Hello How Are You?

numpy.char.lower()

函數返回一個數組,其元素轉換為小寫。它對每個元素調用str.lower

import numpy as np
print np.char.lower(['HELLO','WORLD'])
print np.char.lower('HELLO')

輸出如下:

['hello' 'world']
hello

numpy.char.upper()

函數返回一個數組,其元素轉換為大寫。它對每個元素調用str.upper

import numpy as np
print np.char.upper('hello')
print np.char.upper(['hello','world'])

輸出如下:

HELLO
['HELLO' 'WORLD']

numpy.char.split()

此函數返回輸入字串中的單詞列表。 默認情況下,空格用作分隔符號。 否則,指定的分隔符號字元用於分割字串。

import numpy as np
print np.char.split ('hello how are you?')
print np.char.split ('zaixianPoint,Hyderabad,Telangana', sep = ',')

輸出如下:

['hello', 'how', 'are', 'you?']
['zaixianPoint', 'Hyderabad', 'Telangana']

numpy.char.splitlines()

函數返回數組中元素的單詞列表,以換行符分割。

import numpy as np
print np.char.splitlines('hello\nhow are you?')
print np.char.splitlines('hello\rhow are you?')

輸出如下:

['hello', 'how are you?']
['hello', 'how are you?']

'\n''\r''\r\n'都會用作換行符。

numpy.char.strip()

函數返回數組的副本,其中元素移除了開頭或結尾處的特定字元。

import numpy as np
print np.char.strip('ashok arora','a')
print np.char.strip(['arora','admin','java'],'a')

輸出如下:

shok aror
['ror' 'dmin' 'jav']

numpy.char.join()

這個函數返回一個字串,其中單個字元由特定的分隔符號連接。

import numpy as np
print np.char.join(':','dmy')
print np.char.join([':','-'],['dmy','ymd'])

輸出如下:

d:m:y
['d:m:y' 'y-m-d']

numpy.char.replace()

這個函數返回字串副本,其中所有字元序列的出現位置都被另一個給定的字元序列取代。

import numpy as np
print np.char.replace ('He is a good boy', 'is', 'was')

輸出如下:

He was a good boy

numpy.char.decode()

這個函數在給定的字串中使用特定編碼調用str.decode()

import numpy as np

a = np.char.encode('hello', 'cp500')
print a
print np.char.decode(a,'cp500')

輸出如下:

\x88\x85\x93\x93\x96
hello

numpy.char.encode()

此函數對數組中的每個元素調用str.encode函數。 默認編碼是utf_8,可以使用標準 Python 庫中的編解碼器。

import numpy as np
a = np.char.encode('hello', 'cp500')
print a

輸出如下:

\x88\x85\x93\x93\x96

上一篇: NumPy位操作 下一篇: NumPy數學算數函數