0 / 0 / 1
Регистрация: 09.06.2016
Сообщений: 2
1

Object is not callable with class

09.06.2016, 14:51. Показов 4559. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый!

Не знаю почему, python 3 выдает ошибку
if (self.context_name(line)):
TypeError: 'str' object is not callable


Причем только если использовать класс. В функциональном виде все ок.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
class ApnsConfig:
    def __init__(self, config_file, fileForSae):
        self.ifApn = False
        self.ifContext = False
        self.ifBgp = False
        self.ifVrf =False        
        self.context_name = str()
        self.config_file = config_file
        self.fileForSae = fileForSae
 
    def context_name(self, line):
        tmp = line.split()
        if (len(tmp) == 2):
            self.context_name = tmp[1]
            self.ifContext = True
            return True
        return False
 
    def get_config_apn (self, apn, f):
        res = []
        for line in f.readlines():
            if ("context" in line):
                if (self.context_name(line)):
                    res.append(line)

Причем только если использовать класс. В функциональном виде все ок.

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def context_name( line):
    tmp = line.split()
    if (len(tmp) == 2):
        return True
    return False
 
def get_config_apn ( apn, f):
    ifApn = False
    ifcontext = False
    ifBgp = False
    ifVrf =False   
    res = []
    for line in f.readlines():
        if ("context" in line):
            if (context_name(line)):
                res.append(line)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2016, 14:51
Ответы с готовыми решениями:

'int' object is not callable
import math #горизонтальная координата x = 1 #ускорение свободного падения g = 9.822...

TypeError: 'int' object is not callable
Начал изучать питон но столкнулся с проблемой. def d(): x=int(input("Введите: "))...

TypeError: 'module' object is not callable
Помогите, пожалуйста, не понимаю, в чем ошибка. Выводится такая ошибка: Traceback (most recent...

Max(): TypeError: 'Series' object is not callable
Добрый вечер! Объясните пожалуйста, почему это не работает a=0.1 b=0.2 c=0.3 s= max(s)

2
2740 / 2339 / 620
Регистрация: 19.03.2012
Сообщений: 8,830
09.06.2016, 14:54 2
VasiaChe, строка 23, в context_name у тебя лежит строка, а ты ее пытаешься вызвать будто это функция или класс.

Назови метод или атрибут по другому, а то у тебя конфликт имен.
1
0 / 0 / 1
Регистрация: 09.06.2016
Сообщений: 2
09.06.2016, 14:59  [ТС] 3
Спс за ответ!

В том то и дело что context_name это функция в том же классе.

Python
1
2
3
4
5
6
7
    def context_name(self, line):
        tmp = line.split()
        if (len(tmp) == 2):
            self.context_name = tmp[1]
            self.ifContext = True
            return True
        return False
Я ее и вызываю как функцию экземпляра класса:
Python
1
if (self.context_name(line)):
Без классов все нормально работает.

Добавлено через 2 минуты
alex925, Спасибо!!!!
И правда увидел! Туплю уже

Python
1
2
3
4
5
6
7
8
9
class ApnsConfig:
    def __init__(self, config_file, fileForSae):
        self.ifApn = False
        self.ifContext = False
        self.ifBgp = False
        self.ifVrf =False        
        [B]self.context_name = str()[/B]
        self.config_file = config_file
        self.fileForSae = fileForSae
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.06.2016, 14:59
Помогаю со студенческими работами здесь

TypeError: 'str' object is not callable. Как исправить?
import string file = open("input.txt", "r") db = file.readlines() file.close() file =...

TypeError: 'str' object is not callable. Как исправить? - Python
import time, socket, threading, requests, urllib, socks def thread(numthreads, attack): ...

TypeError int object is not callable, ошибка в функции len
Добрый день, Уважаемые форумчане. Я пишу простенький скрипт, суть его в том, что он берет строки...

Как исправить ошибку TypeError: 'str' object is not callable?
Как исправить ошибку типа объекта. try: WebDriverWait(chrome, 60).until( ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru