2013-03-12 2 views
0

저는 파이썬 (이 언어는 제 2 언어 임)에 익숙하지 않으므로 제 질문은 다른 사람들도 비슷한 것을 고민하는 데 도움이되기를 바랍니다.이름이 정의되지 않음 For 루프 내의 오류?

참고로 Netbeans IDE 6.9.1 및 Python 2.7.3을 사용하고 있습니다.

뒷 배경의 비트, 나는 논문을위한 교통 문제를 연구하고 있으며 도시 (노드)와 도로 (호)의 네트워크를 생성해야합니다. 아래 코드를 사용하여 수행중인 작업은 열린 (파일, 'w') 작업에 전달할 문자열을 생성하는 것입니다. 여기서는 임의로 생성 된 데이터를 텍스트 파일에 씁니다. 예를 들어

: FNodes = '\ DijkstraShortestPath \ 데이터 \ 100Nodes \ Node5.txt'

나는 점점 계속 "이름 'Fnodes을'정의되지"오류 나는 다음이 코드를 실행합니다.

나는 이것을 알아 내려고 노력했다. 이것이 정의되어서는 안되는가? 결국, 나는 "FNodes = bla bla bla"라고 썼다.

나는 그것을 루프에서 꺼내려고했지만 FNodes 문자열에서 사용되기 때문에 'item'과 'replications'와 같은 오류가 발생했습니다. 이것은 for 루프에 정의되어 있으므로 의미가 있습니다.

새로운 사람이이 구문 실수를 이해하도록 도울 수 있다면, 좋을 것입니다.

도움 주셔서 감사합니다.

R = 10 #Number of replications (trials) 
NumNodes = [50,100,150] #Number of nodes (cities). Also the names of 3 folders. 

for item in NumNodes: #Cycle through 50, 100, 150 nodes for folder path XXXNodes 

    for replications in range(R): #Cycle through fileR.txt by replication number 

     fNodes = "\\DijkstraShortestPath\\Data\\" + str(item) + "Nodes\\Node" \ 
     + str(replications + 1) + ".txt" 

     print FNodes #This is a debugging step for me so I can see what's happening 

     #Write to files and stuff... 
+1

예외를 발생시키는 실제 코드가 표시되지 않는 이유가 궁금합니다. 'open' 호출은 어디에 있습니까? 코드 스 니펫을 확장하십시오. 그런데 경로가 상대 경로라면 슬래시로 시작하면 안됩니다. –

+0

오류를 발견했습니다. 실제로 fNodes를 정의했을 때 FNode를 참조하려고했습니다. 대문자 사용 실수. "상대적인"경로 란 무엇을 의미합니까? – Chris

+0

상대 경로는 현재 디렉토리에 상대적인 파일 위치를 표시합니다. 절대 경로는 파일 시스템 트리의 루트에서 시작합니다. –

답변

0

나는 오류를 발견하고 계속 진행할 수있었습니다.

대문자 사용 오류입니다. 인쇄 FNode는 인쇄 fNode 여야합니다.