當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python splitfields()用法及代碼示例


splitfields()方法是一個用戶定義的方法寫在Python將任何類型的數據拆分為列表使用分隔符的字段。可以將分隔符指定為該方法的參數,如果未指定分隔符,該方法將使用空格字符作為分隔符來分割字符串。

用法:string.splitfields(delimiter)

參數:

  • 字符串(必填)-要拆分為字段的字符串。
  • 分隔符(可選)-用作將字符串拆分為字段的分隔符的字符或字符串。如果未指定該參數,則該方法使用空格字符作為分隔符。

返回值:splitfields() 方法返回由指定分隔符分隔的字段列表。如果沒有指定分隔符,該方法將分割string使用空白字符。如果字符串為空,則該方法返回一個空列表。

類型錯誤:如果您使用錯誤數量或類型的參數調用splitfields()方法,您將收到類型錯誤。

splitfields()方法示例

讓我們看一些如何在 Python 中實現用戶定義的 splitfields() 方法的示例。

示例 1:使用 splitfields() 和錯誤類型的參數

Python3


# Example of a TypeError when calling splitfields() 
num = 123
fields = num.splitfields(",") 

輸出:

由於 splitfields() 方法隻能在字符串對象上調用,這將導致 TypeError。錯誤消息將如下所示:

Traceback (most recent call last):
 File "<ipython-input-1-6b9c6a2fbfd8>", line 2, in <module>
   fields = num.splitfields(",")
AttributeError: 'int' object has no attribute 'splitfields'

示例 2:將 splitfields() 與字符串一起使用

Python3


class MyString(str): 
    def splitfields(self, sep=None): 
        if sep is None: 
            return self.split() 
        else: 
            return self.split(sep) 
  
# Splitting a string into fields using whitespace as delimiter 
str1 = "The quick brown fox"
fields1 = MyString(str1).splitfields() 
print(fields1) 
  
  
# Splitting a string into fields using a specific delimiter 
str2 = "apple,banana,orange"
fields2 = MyString(str2).splitfields(",") 
print(fields2) 

輸出:

['The', 'quick', 'brown', 'fox']
['apple', 'banana', 'orange']

示例 3: 將 splitfields() 與列表一起使用

Python3


class MyString(str): 
    def splitfields(self, sep=None): 
        if sep is None: 
            return self.split() 
        else: 
            return self.split(sep) 
  
# Splitting a list into fields using whitespace as delimiter 
lst1 = ["The", "quick", "brown", "fox"] 
fields3 = MyString(" ".join(lst1)).splitfields() 
print(fields3) 
  
# Splitting a list into fields using a specific delimiter 
lst2 = ["apple", "banana", "orange"] 
fields4 = MyString(",".join(lst2)).splitfields(",") 
print(fields4) 

輸出:

['The', 'quick', 'brown', 'fox']
['apple', 'banana', 'orange']

示例 4:將 splitfields() 與 Set 一起使用

Python3


class MyString(str): 
    def splitfields(self, sep=None): 
        if sep is None: 
            return self.split() 
        else: 
            return self.split(sep) 
  
class MySet(set): 
    def splitfields(self, sep=None): 
        str_set = " ".join(self) 
        return MyString(str_set).splitfields(sep) 
  
# Splitting a set into fields using whitespace as delimiter 
set1 = {"The", "quick", "brown", "fox"} 
fields5 = MySet(set1).splitfields() 
print(fields5) 
  
  
# Splitting a set into fields using a specific delimiter 
set2 = {"apple", "banana", "orange"} 
fields6 = MySet(set2).splitfields(",") 
print(fields6) 

輸出:

['quick', 'brown', 'fox', 'The']
['apple banana orange'] 


相關用法


注:本文由純淨天空篩選整理自gangiswathi2000大神的英文原創作品 Python splitfields() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。