2015-09-26 2 views
2

У меня есть сценарий под названием test.py и внутри этого сценария я следующее:Передача аргумента функции в другом скрипте?

class TestClass: 

    def greetings(name): 

     print "Hello %s!" % name 
     return; 


    def oppositeBool(value): 

     if value == True: 
      return False; 
     else: 
      return True; 

В терминале я следующее, чтобы импортировать его:

$ python 
>>> import test 

Как запустить метод сейчас? Я хотел бы сделать следующее:

test.greetings('Superman') 

и:

myNewValue = test.oppositeBool(True) 
print myNewValue 
+0

Похоже, эти функции находятся в 'TestClass' классе, так что вы будете иметь доступ этот класс. – TigerhawkT3

+0

Спасибо @ TigerhawkT3 и как бы я это сделал? Извините, я довольно новичок в python, исходящий из Objective-C:) – KingPolygon

+0

'' test.TestClass.greetings ('Superman') '' или '' из тестового импорта TestClass''. Затем вы можете сделать что-то вроде '' TestClass.greetings ('Superman') '' –

ответ

2

Поскольку эти функции находятся в классе, так что вам нужно вызвать функцию так:

import test 
c = test.TestClass() 
c.greetings('Superman') 


Конечно. Если вы действительно хотите вызвать функцию типа test.greetings('Superman'), не определяйте ее в классе.


И, кстати, функция в классе должна с self переменной, как это:

def greetings(self, name): 

    print "Hello %s!" % name 
    return 
+0

Пробовал это, но, к сожалению, я вижу следующее: 'Файл '", строка 1, в NameError: имя' TestClass 'не определено' – KingPolygon

+1

Полностью забыл 'self'! большое спасибо – KingPolygon

Смежные вопросы