使用場景:
在科研中,資料樣本的命名方式往往包含著對應的資訊,
例如,一張人臉圖片 34_anger_1.png
,檔名中包含著該圖片中主體在資料集中的ID、人臉表情種類、以及該圖片是同型別第幾張圖片。
使用python批次處理資料時,從檔名中獲取對應資訊也是很關鍵的一步,然後才能基於這些資訊進行下一步操作。
而最常用的一種方法,就是透過字串分割,來從檔名中獲取相應資訊。
使用方法:
str.split(separator, maxsplit)
功能:按指定的分隔符將給定的字串拆分為字串列表。
引數:
separator
:分隔符。表示字串在此指定分隔符處拆分。若沒有指定,則預設空格為分隔符。
maxsplit
:分隔次數。表示將字串拆分為指定的次數。若沒有指定,則預設為-1,表示對所有分隔符都進行拆分。str.rsplit(separator, maxsplit)
功能:按指定的分隔符從右往左將給定的字串拆分為字串列表。
rsplit()
和split()
的引數使用方法相同,兩者的區別只在於拆分的順序,split()
是從左往右拆分,rsplit()
是從右往左拆分。
程式碼示例:
string = "one_two_three"
words_1 = string.split('_',1)
print(words_1)
words = string.split('_')
print(words)
rwords_1 = string.rsplit('_',1)
print(rwords_1)
rwords = string.rsplit('_')
print(rwords)
執行效果:
['one', 'two_three']
['one', 'two', 'three']
['one_two', 'three']
['one', 'two', 'three']