Framework: Робот, Язык: Python-3.7.1 Уровень владения: Новичок
У меня есть переменная args = [], определенная на уровне класса. Значения переменных присваиваются из командной строки с помощью модуля 'sys'
import sys
class Runner():
args = []
def argument_reader(self):
self.args = list(sys.argv)
def login(self):
return self.args[1], self.args[2]
Я мог бы печатать все значения аргументов, пока выполнение остается в модуле. Если я хотел вызвать те же значения из другого модуля, он ничего не возвращает, так как значения удаляются из памяти. Так как переменные класса по умолчанию являются статическими в python, почему система не удерживает значения?
cmd line>>py Runner.py testing test@123
Например:
Calling method from same class:-
run = Runner()
run.argument_reader()
print(run.login())
Output>>> testing, testing@123
Calling the same method from another class:-
runn = Runner.Runner()
print(runn.login())
output>> IndexError: list index out of range