#python #python-3.x #function #class #methods
Вопрос:
я новичок в python, и у меня есть проблема, которую я не могу понять
AttributeError: 'str' object has no attribute 'path'
class extractor:
"""This class will find the path for the pdx"""
def __init__(self, pdx_name,path):
self.pdx_name = pdx_name
self.path = path
def __str__(self):
return self.pdx_name
def find_folder(self):
if os.path.exists(self.path):
return self.path
может быть, кто-то сможет объяснить, что происходит, я думаю, это что-то простое, чего я до сих пор не понял.
Спасибо вам!f
Комментарии:
1. Эти формы функций относятся к классу, а не к отдельному. Это ваша ошибка.
2. Как вы используете свой класс экстрактора? Я думаю, вам нужно добавить фрагмент кода, показывающий, по крайней мере, его использование. Когда возникает ваша ошибка?
Ответ №1:
Как упоминал @dawg, эти методы принадлежат классу:
import os
class File
def __init__(self, pdx_name, path):
self.pdx_name = pdx_name
self.path = path
def __str__(self):
return self.pdx_name
def find_folder(self):
if os.path.exists(self.path):
return self.path
file = File('some_name', '/Users/bob')
print(file.find_folder())
Комментарии:
1. Я думаю, что он уже поместил эти методы в
extractor
класс, но smh не смог поместить их в образец кода2. @Рустамгараев, ах, ну это всех смутит 🙂
Ответ №2:
Это код внутри основного файла python, в котором я вызываю класс
путь импорта как pt
val = input("Introduceti numele PDX-ului: ")
path='x'
x=pt.extractor(val,path)
print(x)
y = pt.extractor.find_folder(path)
print(y)