Ошибка типа: у объекта 'function' нет атрибута '__getitem__' в python - PullRequest
0 голосов
/ 17 февраля 2019

Я создал функцию get_config, чтобы передать два параметра моей главной функции.Кажется, я получаю следующую ошибку при запуске моего скрипта:

File "querysearch.py", line 14, in main
    search_type = get_config[0]
TypeError: 'function' object has no attribute '__getitem__'

Я неправильно передаю аргументы?Мой сценарий выглядит следующим образом:

import argparse

def get_config():
    parser = argparse.ArgumentParser(description='Search your keyword ex: querycheck.py andsearch general,population,Alzheimer')
    parser.add_argument('searchtype', type=str, help='Search type orsearch and andsearch only ')
    parser.add_argument('Value', type=str, help='Parameter to search')
    args = parser.parse_args()
    return [args.searchtype , args.Value]


def main(get_config):
    finallist = []
    counter = 0
    search_type = get_config[0]
    value = get_config[1]


    if search_type == "orsearch":
        _prasplit = value.split(",")
        with open("hscic-news", "r") as newsfile:
            ncontent = newsfile.readlines()
            for x in range(len(ncontent)):
                for y in _prasplit:
                    if y in ncontent[x]:
                        finallist.append(x)


    #   print (list(set(finallist)))
        list_with_duplicates = list(set(finallist))
        final_list = list(set(finallist))
        result = final_list
        print(result)

1 Ответ

0 голосов
/ 17 февраля 2019

Вы на самом деле не вызываете функцию get_config.

Измените последнюю строку вашей функции get_config на return args.searchtype, args.Value.

Затем измените строки в вашей основной функции на search_type, value = get_config().

...