当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。