2013-03-12 1 views
0

Я новичок в Python (это мой второй язык), поэтому, надеюсь, мой вопрос может помочь кому-то еще и бороться с чем-то подобным.Имя Не определено Ошибка внутри цикла?

Для справки, я использую Netbeans IDE 6.9.1 и запускаю Python 2.7.3.

Немного предыстории, я изучаю транспортную проблему для диссертации, и мне нужно создать сеть городов (узлов) и дорог (дуги). То, что я делаю с приведенным ниже кодом, - это генерация строки, которую я передам в открытую (файл, «w») операцию, где я буду записывать случайные данные в текстовый файл.

Например: Fnodes = '\ DijkstraShortestPath \ Data \ 100Nodes \ Node5.txt'

Я постоянно получаю "имя 'Fnodes' не определен" ошибка, когда я запускаю этот код, приведенный ниже.

Я потратил часы, пытаясь понять это; не следует ли это определять? В конце концов, я написал «FNodes = bla bla bla».

Я попытался вытащить его из цикла, но это вызвало те же ошибки с помощью «item» и «replications», поскольку они используются в строке FNodes. Это имеет смысл, поскольку они определены в цикле 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

Интересно, почему вы не показываете фактический код, который вызывает исключение. Где «открытый» звонок? Расширьте свой фрагмент кода. Кстати, если ваш путь относительный, он, вероятно, не должен начинаться с косой черты. –

+0

Я заметил ошибку - я пытался ссылаться на FNodes, когда я действительно определял fNodes. Ошибка капитализации. Что вы подразумеваете под «относительным» путем? – Chris

+0

Относительный путь показывает расположение файла относительно текущего каталога. Абсолютный путь начинается с корня дерева файловой системы. –

ответ

0

Я заметил ошибку и был в состоянии двигаться дальше.

Это была ошибка капитализации; print FNodes должны были быть напечатаны fNodes