试图返回字典,但是我得到一个'list'对象是不可调用的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了试图返回字典,但是我得到一个'list'对象是不可调用的相关的知识,希望对你有一定的参考价值。

编辑:感谢jeremy_rutman,我看到我没有调用函数 searchTagXhtml

我正在编写一个脚本,用于搜索所有.txt文件中是否存在关键字。

[如果关键字存在于.txt文件之一中,则将Y传递到字典,否则将错误的语句字符串传递到字典语句N

我想将最终结果存储在pandas数据框中,在那里我可以查看所有关键字是否存在。

有些东西无法正常工作,因为出现错误:

dict_new=dict(searchTerms(directory, i))
TypeError: 'list' object is not callable

我正在尝试返回字典,所以我不明白为什么这会向我返回此错误消息

import os
import pandas as pd

def getSubString(s1):
    s = s1.split('=')[0]
    return s

def readTagLines(file):
    with open(file, "r") as ins:
        array = []
        for line in ins:
            formatTag = getSubString(line)
            array.append(formatTag)
        return array


def searchTagXhtml(directory, i):
    searchTag_details = {}
    isPresent= False
    import os
    rootdir = (directory)
    for folder, dirs, files in os.walk(rootdir):
        for file in files:
            if file.endswith('.txt'):
                fullpath = os.path.join(folder, file)
                with open(fullpath, 'r') as f:
                    for line in f:
                        if i in line:
                            isPresent=True
                            break
    Present = "N"
    if isPresent:
        Present = "Y"

    searchTag_details['searchTag'] = i
    searchTag_details['Present'] = Present
    print(searchTag_details)

    return searchTag_details

if __name__ == '__main__':
    file='C:\\Projecten\\dns\\scripts\\pyTag\\keywords.txt'
    searchTerms = readTagLines(file)
    directory="C:\\Projecten\\dns\\Checks"
    df = pd.DataFrame()
    for i in searchTerms:
        dict_new=dict(searchTerms(directory, i))
        df.append(dict_new, ignore_index=True)
    df.to_csv('Keywords.csv', index=False)
答案
None

以上是关于试图返回字典,但是我得到一个'list'对象是不可调用的的主要内容,如果未能解决你的问题,请参考以下文章

在Swift中,如何声明键是函数的字典? (不符合协议'Hashable')

传递到字典中的模型项的类型为'System.Collections.Generic.List`1 []',但此字典需要[duplicate]类型的模型项

Python Json加载()返回字符串而不是字典?

python字典如何根据value返回对应的keys?value值不唯一

当我使用 set( list_a + list_b ) 它返回一个字典。集合自然返回字典吗?

Android:String List中的变量总是返回0