하나의 함수는 xyz를 사용하고 다른 함수에서는 이러한 변수를 호출합니다. 함수 거리는 각 xyz를 readast에서 취한 다음 각 행을 제곱, 합 및 제곱근으로 가정합니다. ex 500 600 700 (각 숫자를 제곱하고 모두 합친 다음 합계 제곱근) 행이 끝난 후에 그 결과를 표시합니다. 그러나, 거리에있는 나의 수는 나의 readast 함수에있는 단지 숫자의 마지막 줄입니다 ... 어떤 생각? 다음은 반환for 루프에서 동일한 숫자를 생성하는 난수 생성기 Python
실제로 wrtiting의 파일을 열고 15 개 소행성에 대한 임의의 좌표를 계산하고 파일 하나 하나를 기록
readast을() : 내가 당신의 기능을하고 볼
def readast():
astlist=open('asteroids.txt','w')
letter=65
for line in range(15):
x=random.randint(1,1000)
y=random.randint(1,1000)
z=random.randint(1,1000)
astlist.write(('\n')+chr(letter)+('\t')+(str(x))+('\t')+(str(y))+('\t')+(str(z)))
letter=letter+1
return astlist,x,y,z
astlist.close()
def distance(astlist,x,y,z):
distlist=open('distance.txt','w')
letter=65
for line in range(15):
x1=x**2
y1=y**2
z1=z**2
equation=math.sqrt(x1+y1+z1)
distlist.write(('\n')+chr(letter)+('\t')+(str(x))+('\t')+(str(y))+('\t')+(str(z)+('\t')+(str(equation))))
letter=letter+1
return distlist
distlist.close()
하나의 기능을 "읽기"라고 부르지 만 어느 기능도 아무 것도 읽지 않습니다. 함수에서'return' 이후의 코드는 실행되지 않습니다. 당신은'readast()'의'return' 라인에있는 한 세트의'x, y, z' 값을 명시 적으로 리턴합니다. –