저는 실험실 테스트 소프트웨어에서 작업하고 있습니다. 저는 백본 단계에 있으며, 너무 멀기 전에 비상 정지가 실패를 인식하는지 테스트하려고하고 있습니다. 여기 변수를 던지는 오류를 테스트합니다.
코드입니다 :import sys
def main(argv):
currentTempAverage = 0;
testingPlaced = False
typeOfTesting = False
issue="False"
class labTesting(object):
def __init__(self,currentCondition,emergencyStop=0):
self.output = labLog()
Conditions = []
self.status = "OPEN"
self.beginningCondition = currentCondition
self.EndingCondition = ""
self.output.log("Testing opened")
if float(currentCondition) > float(self.beginningCondition*1.003):
issue="True"
if (issue=="True") and float(currentCondition) < float(beginningCondition*1.002):
self.output.log("YIKES!")
self.status="CLOSED"
if (emergencyStop):
self.emergencyStop = currentCondition - emergencyStop
self.output.log("stop loss")
def close(self,currentCondition):
if currentCondition > (self.beginningCondition * 1.012717049):
self.status = "CLOSED"
self.EndingCondition = currentCondition
def tick(self, currentCondition):
def showTesting(self):
testingStatus = "Entry Condition: "+str(self.beginningCondition)
self.output.log(testingStatus)
기본적으로, 검사있어 수준 및 수준이 어느 지점에 도달하는 경우 - true의 문제 =이 문제가 될 수 있기 때문이다.
레벨이 낮아지면 비상 정지합니다. 어떻게하는지에 따라 오류가 발생합니다.
Traceback (most recent call last):
File "/home/DDesm/Desktop/w/labtest/testing.py", line 18, in tick
if (issue=="True") and float(currentPrice) < float(entryPrice*1.002):
UnboundLocalError: local variable 'issue' referenced before assignment
고마워요!
당신은이 라인'클래스 labTesting (객체)가 :'주'에서()'및 들여 쓰기가 꺼져 다음과 같이 당신은을 통해
__init__
방법에issue
를 전달하여이 올 수 있습니다. – srig첫 번째 조건이 충족되지 않으면 변수'issue'가 정의되지 않은 것입니다. 'main'에'issue = false'라고 쓰면 그 변수는'main' 함수의 범위 안에서만 존재하므로 다른 곳에서 정의되기 전까지는 그 함수 밖에서 접근 할 수 없습니다. – Tim
코드가 들여 쓰기가 불완전하며 불완전합니다. –