С Новым годом! Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/25: Рейтинг темы: голосов - 25, средняя оценка - 4.92
4 / 4 / 0
Регистрация: 15.09.2019
Сообщений: 96

Внезапный лишний аргумент: str ('str' object has no attribute 'Name')

21.11.2020, 02:01. Показов 5578. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане!
Создаю простейшее приложение на Python: класс и его использование.
Совершенно выбивает из колеи конструктор: без параметров он ничего не требует, с параметрами затёсывает (только если есть выозов снаружи) аргумент str:
function Cat.Cat.__init__(self: Cat, str, name, poroda) declared in Cat
В коде:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import Cat
 
def main():
    cat1 = Cat.Cat.__init__("", "Пуся", "Перскидская кошка") #Ошибка: 'str' object has no attribute 'Name'
    cat2 = Cat.Cat.__init__("Веник", "Мейн-кун") #Ошибка: __init__() missing 1 required positional argument: 'poroda'
    cat3 = Cat.Cat.__init__("", "Отчебучка", "Сиамская кошка")
 
    Name = input("Введите имя кошки: ")
    Poroda = input("Введите породу кошки: ")
 
    print(cat1.IsMyCat(Name, Poroda))
    print(cat2.IsMyCat(Name, Poroda))
    print(cat3.IsMyCat(Name, Poroda))
 
main()
Для класса
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class Cat:
#    """Содержит кличку и породу кошки"""
    Name = ""
    Poroda = ""
 
 
    # конструктор
    def __init__(self, name, poroda):
        self.Name = name  # устанавливаем имя
        self.Poroda = poroda
 
 
 
    #Вернёт true, если входные параметры имени и кллички соответственно совпадут
    def IsMyCat(self, name, poroda):
        return self.Name == name and self.Poroda == poroda
Помогите, пожалуйста, найти ошибку
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.11.2020, 02:01
Ответы с готовыми решениями:

'str' object has no attribute
Здравствуйте. Возникла проблема с вызовом функции. Ошибка такая: 'str' object has no attribute 'getInfoPasient'. Пробовала переименовывать,...

AttributeError: 'str' object has no attribute 'startwith'
Ребят выходит ошибка, не могу понять в чем дело, объясните что делать. Traceback (most recent call last): File...

AttributeError: 'str' object has no attribute 'text'
Доброго времени суток друзья, столкнулся с такой проблемой followers_count = followers_button.text AttributeError: 'str' object has no...

4
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
21.11.2020, 02:34
Цитата Сообщение от VladisSVostok Посмотреть сообщение
Совершенно выбивает из колеи конструктор
1) __init__ - не конструктор.
2) Не используй атрибуты уровня класса, если не понимаешь как они работают в Python.
2) Создавать экземпляр класса нужно через имя класса.
3) Не называй модули таким же именем как и класс, да еще с прописной буквы.
Python
1
2
import cats
cat = cats.Cat(аргументы для init)
1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5972 / 3734 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
21.11.2020, 09:51
Цитата Сообщение от VladisSVostok Посмотреть сообщение
Cat.Cat.__init__("", "Пуся", "Перскидская кошка")
Python
1
Cat("Пуся", "Перскидская кошка")
1
4 / 4 / 0
Регистрация: 15.09.2019
Сообщений: 96
21.11.2020, 18:59  [ТС]
Спасибо, помогло.
Вот это не понял:
2) Не используй атрибуты уровня класса, если не понимаешь как они работают в Python.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
21.11.2020, 19:15
Цитата Сообщение от VladisSVostok Посмотреть сообщение
Вот это не понял:
Python
1
2
Name = ""
Poroda = ""
Это про них. В С++ это статические поля. В Python - нет. Поэтому писать их просто так нет смысла.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.11.2020, 19:15
Помогаю со студенческими работами здесь

AttributeError: 'str' object has no attribute 'append'
Пишу грабера и вот клиент дал задание считать все из фильтров и обозначить в екселе-киселе что в какой категории. Но вот проблема... Я как...

AttributeError: 'str' object has no attribute 'tell'
Добрый день всем, я только начал изучать python. Наткнулся на задачу, написать базу данных, запись заносилась на диск, чтобы ее потом можно...

AttributeError: 'str' object has no attribute 'matches'
str=input() for i in str: while i!='s': import re b=str.matches("A-Z") if b: ...

Ошибка 'str' object no attribute 'getElementsByTagName'
from xml.dom.minidom import parse import urllib f = urllib.urlopen('http://rss-лента') xml = f.read() f.close() nd =...

AttributeError: 'str' object has no attribute 'keys'
здраствуйте, пишу голосового помощника и столкнулся с ошибкой (козалось-бы простой, но сам разобраться не могу). помогите пожалуйста. ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru