【问题标题】:Why does this code produce the error "AttributeError: 'Match' object has no attribute 'replace'"?为什么这段代码会产生错误“AttributeError: 'Match' object has no attribute 'replace'”?
【发布时间】:2019-06-05 17:12:49
【问题描述】:

通过以下基本脚本,我可以使用 sports 包获取所有当前匹配项:​​

import sports
all_matches = sports.all_matches()
s = all_matches['soccer']
print(s)

>> [Saham 1-2 Al Shabab, Cuanda Cubango FC 1-2 Academica Lobito, Recreativo Da Caala 0-2 Primeiro De Agosto, Progresso Associacao 0-0 Santa Rita De Cassia, Wapda 1-1 Karachi Electric, Tooro United 2-0 Bright Stars FC, Bul FC 2-2 Nyamityobora, Paidha Black Angels 1-1 Maroons FC, Express FC 0-0 Ndejje University, Pakistan Navy 1-0 National Bank, La Roda 0-0 Atletico Ibanes] [Finished in 10.4s]

我希望拆分列表,以便每行得到一个匹配,如下所示:

import sports
all_matches = sports.all_matches()
s = all_matches['soccer']
soccer = [i.replace(',', '\n') for i in s]
print(soccer)

AttributeError: 'Match' object has no attribute 'replace'

希望输出:

>>[Saham 1-2 Al Shabab
>>Cuanda Cubango FC 1-2 Academica Lobito
>>Recreativo Da Caala 0-2 Primeiro De Agosto
>>Progresso Associacao 0-0 Santa Rita De Cassia
>>Wapda 1-1 Karachi Electric
>>Tooro United 2-0 Bright Stars FC

【问题讨论】:

    标签: python python-3.x math


    【解决方案1】:

    您正在使用的库中的Match 类定义了相同的__repr____str__ 方法,它们返回一个包含主队名称、主队得分、客队得分和客队名称的字符串。这就是您在打印匹配列表时看到结果的原因。

    您的变量 slistMatch 对象。

    有两种方法可以在单独的行上打印每个匹配项。

    您可以使用 for 循环来打印每个匹配项:

    >>> for m in matches:
    ...     print(m)
    ... 
    Saham 1-2 Al Shabab
    Cuanda Cubango FC 1-2 Academica Lobito
    Recreativo Da Caala 0-2 Primeiro De Agosto
    Progresso Associacao 0-0 Santa Rita De Cassia
    Wapda 1-1 Karachi Electric
    Tooro United 2-0 Bright Stars FC
    Bul FC 2-2 Nyamityobora
    Paidha Black Angels 1-1 Maroons FC
    Express FC 0-0 Ndejje University
    Pakistan Navy 1-0 National Bank
    La Roda 0-0 Atletico Ibanes 
    

    或者您可以使用str.join 方法将所有对象的字符串表示形式连接在一起,中间使用换行符:

    >>> print('\n'.join(str(x) for x in matches))
    Saham 1-2 Al Shabab
    Cuanda Cubango FC 1-2 Academica Lobito
    Recreativo Da Caala 0-2 Primeiro De Agosto
    Progresso Associacao 0-0 Santa Rita De Cassia
    Wapda 1-1 Karachi Electric
    Tooro United 2-0 Bright Stars FC
    Bul FC 2-2 Nyamityobora
    Paidha Black Angels 1-1 Maroons FC
    Express FC 0-0 Ndejje University
    Pakistan Navy 1-0 National Bank
    La Roda 0-0 Atletico Ibanes
    

    【讨论】:

      猜你喜欢
      • 2016-09-20
      • 1970-01-01
      • 2018-05-25
      • 2020-05-26
      • 1970-01-01
      • 1970-01-01
      • 2023-01-16
      相关资源
      最近更新 更多