【问题标题】:partition and rpartiton getting TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'分区和rpartiton得到TypeError:'builtin_function_or_method'对象没有属性'__getitem__'
【发布时间】:2013-10-31 17:59:12
【问题描述】:

我在尝试运行脚本时遇到此错误。

TypeError: 'builtin_function_or_method' object has no attribute '__getitem__'

这是脚本:

containerFile = open((tmpImageDirectory+"container.rvbr"), "r")
containedString = containerFile.read()
containerFile.close()
containedFiles = containedString .partition[","]

container.rvbr 包含一个带有多个逗号的字符串。 如果执行这个str(conatinedString) 我得到这个<type 'str'>,所以它是一个字符串。我想知道是否有人可以解释这个。

【问题讨论】:

    标签: python partition


    【解决方案1】:

    使用括号而不是方括号来调用方法:

    containedFiles = containedArray.partition(",")
    

    此外,您可能想要使用split 而不是partitionpartition 将在结果元组中保留逗号,即使这些逗号实际上不是文件:

    "hello,world".partition(",")
    # ('hello', ',', 'world')
    "hello,world".split(",")
    # ['hello', 'world']
    

    【讨论】:

    • 谢谢!我很抱歉这个愚蠢的问题。我没有搜索类型错误,因为我没有收到语法错误。 split() 函数解决了我的下一个问题——摆脱昏迷。
    【解决方案2】:
    containedFiles = containedString .partition(",")
    

    不是

    containedFiles = containedString .partition[","]
    

    要调用方法时使用括号。

    【讨论】:

      猜你喜欢
      • 2012-10-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-04
      • 2012-10-15
      • 2014-01-16
      • 2017-02-27
      • 2018-01-28
      相关资源
      最近更新 更多