SORU
27 Temmuz 2009, PAZARTESİ


Başka bir python betiği python betiği çağırmak için en iyi yolu nedir?

Bir komut dosyası bir modül değil test1.py ismini verdim. Sadece programın kendisini çalıştırmak yürütülecek gereken kod var. Fonksiyonlar, sınıflar, yöntemler vb yok. Bir hizmet olarak çalışan bir komut dosyası var. Komut dosyasından test1.py bir hizmet olarak çalışan aramak istiyorum.

örneğin:

test1.py

print "I am a test"
print "see! I do nothing productive."

service.py

# lots of stuff here
test1.py # do whatever is in test1.py

Dosya açma, içeriğini okuma ve temelde eval para olan bir yöntem biliyorum. Bunu yapmanın daha iyi bir yolu vardır sanıyorum. Ya da en azından öyle umuyorum.

CEVAP
27 Temmuz 2009, PAZARTESİ


Bunu yapmak için her zamanki gibi aşağıdaki gibi bir şey.

test1.py

def some_func():
    print 'in test 1, unproductive'

if __name__ == '__main__':
    # test1.py executed as script
    # do something
    some_func()

service.py

import test1

def service_func():
    print 'service func'

if __name__ == '__main__':
    # service.py executed as script
    # do something
    service_func()
    test1.some_func()

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NicoleGrippo

    NicoleGrippo

    14 Kasım 2006
  • READ DESCRIPTION NOW!!!!!!!

    READ DESCRIP

    18 ŞUBAT 2009
  • snookie77

    snookie77

    2 Mart 2006