0

次のようなクラス スレッドがあります。

import threading, time
class th(threading.Thread):
    def run(self):
        print "Hi"
        time.sleep(5)
        print "Bye"

そして今、「寝る」たびに違うものが欲しいとしましょう。

import treading, time
class th(threading.Thread, n):
    def run(self):
        print "Hi"
        time.sleep(n)
        print "Bye"

それは機能せず、次のメッセージが表示されます。

group 引数は今のところ None でなければなりません

では、実行時にパラメーターを渡すにはどうすればよいでしょうか。

注:クラス内の別の関数で次のようにしました:

import treading, time
class th(threading.Thread):
    def run(self):
        print "Hi"
        time.sleep(self.n)
        print "Bye"
    def get_param(self, n):
        self.n = n

var = th()
var.get_param(10)
var.start()
4

2 に答える 2

1
class Th(threading.Thread):
    def __init__(self, n):
        super(Th, self).__init__()
        self.n = n
    def run(self):
        print 'Hi'
        time.sleep(self.n)

Th(4).run()

コンストラクターを定義し、パラメーターをコンストラクターに渡します。行の括弧は、class親クラスのリストを区切ります。n親ではなくパラメータです。

于 2013-08-22T23:59:54.613 に答える