2016-08-08 7 views
0

を必要と不足している:kivy:__init __()は、xは、次のように私はクラスの作品を持っている位置引数

class Movie(Widget): 
    def __init__(self, title, image, time, description, trailer, fsk, threeD, **kwargs): 
     super(Movie, self).__init__(title, image, time, description, trailer, fsk, threeD, **kwargs) 
     title = StringProperty() 
     image = StringProperty() 
     time = StringProperty() 
     description = StringProperty() 
     trailer = StringProperty() 
     fsk = NumericProperty() 
     threeD = BooleanProperty() 

私は私のスクリプトのPythonインタプリタを実行すると、私にこれを伝えます:

TypeError: __init__() missing 7 required positional arguments: 'title', 'image', 'time', 'description', 'trailer', 'fsk', and 'threeD' 

だから何午前私は間違っている?私はすでにこれとしばらく闘っています。この問題に関連する


全体のソースコードは:

class Movie(Widget): 
    def __init__(self, title, image, time, description, trailer, fsk, threeD, **kwargs): 
     super(Movie, self).__init__(title, image, time, description, trailer, fsk, threeD, **kwargs) 
     title = StringProperty() 
     image = StringProperty() 
     time = StringProperty() 
     description = StringProperty() 
     trailer = StringProperty() 
     fsk = NumericProperty() 
     threeD = BooleanProperty() 

class MainView(Widget): 
    def __init__(self, **kwargs): 
     super(MainView, self).__init__(**kwargs) 
     movies = ListProperty() 
     # movies = self.getMovies() 
     # for movie in movies: 
     # self.add_widget(movie) 

    def getMovies(self, url="http://.../"): 
     html = lxml.html.parse(url) 
     titles = html.xpath("//h5") 
     times = html.xpath("//td[@class='pday ptoday']/span/a") 
     trailers = html.xpath("//a[@data-modal-trailer-url]/@data-modal-trailer-url") 
     fsks = html.xpath("//tr[@data-fsk]/@data-fsk") 
     movies = list() 
     # for i in range(0, len(titles)): 
     # movie = Movie(titles[i].text, "images[i]", times[i].text, "", "https:" + trailers[i][:-11], fsks[i], "no") 
     # movies.append(movie) 
     return movies 
+0

あなたの '__init__'呼び出しに引数を与えていますか?あなたはおそらくそうではありません。 'Movie'クラスの初期化時にそれらを指定します。 –

+0

私はMovie型のオブジェクトを作成しないので、Pythonインタプリタが何を何通りかつ何の引数を渡すかを知らずにすでに苦労している理由はわかりません。 – CodeShark

+1

さて、あなたの 'Movie'クラスを初期化しようとしていますが、このエラーが出る前にインタープリタで何を動かしていますか? –

答えて

-1

私はKV-LANG-ファイルは、このオブジェクトの初期化エラーの原因だったことが判明しました。だから私はそれを修正する方法はわかりませんが、これは別の問題だと思うのですが、なぜ__init__が呼び出されているのですか

関連する問題