Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > warning when doubly liked list is defined globally

Reply
Thread Tools

warning when doubly liked list is defined globally

 
 
chand
Guest
Posts: n/a
 
      09-05-2005
Hi.,

In my api.py file 'g_opt_list' is defined globally
g_opt_list =[[],[],[],[],[],[],[]]

when I run the py file, I am getting the Following Error

SyntaxWarning: name 'g_opt_list' is used prior to global declaration

Please let me know how to remove this error

Here is the code which gives the error...

Let me know exact reason for this Error and how to remove this
warning..

import os,sys,re,string,math
from xml.dom import minidom, Node
from Layer import Layer
from LMessage import *
from Param import *
from Message import *
from message_mapping import *
from protocol_mapping import *
from symbol_mapping import *
from opt_list_mapping import *
g_del_opt_list =[[],[],[],[],[],[],[]]
sflag = 0
index=0
del_index=0
radflag = 0
depth = 0
xmlflag = 0
opt_param_list = []
del_opt_param_list = []
#g_opt_list = []
MTAS_HOME="/home/chandras/XML_FILES/"
SIG_STANDARD_HOME = "/home/chandras/SIGNALLING_STANDARD/ANSI_SS7/"
symbols=['(',')','{','}','[',']','.']
reverse_symbols=['<','>','~']
layers=['MTP3','SCCP','IOS','CDTAPM2','CDTAPC2','ISUP','IS-41D-SQA']
GUI_API_COMMAND_LIST = [
"NEW",
"ADD_OPTIONAL_PARAM",
"DELETE_OPTIONAL_PARAM",
"DELETE_LAYER",
"RENAME"
]
BASE2 = "01"
BASE10 = "0123456789"
BASE16 = "0123456789ABCDEF"

Message_obj = Message()
filename =""
buffer = []
#LIST = []
def Process_GUI_Command(arg):
global Message_obj
global filename
print "### COMMAND ###", arg[0]
save_fd = os.dup(1)
if arg[0] == "DELETE_OPTIONAL_PARAM":
out_file = file('/tmp/te6.txt', 'w+')
elif arg[0] == "ADD_OPTIONAL_PARAM":
out_file = file('/tmp/te3.txt', 'w+')
else :
out_file = file('/tmp/te.txt', 'w+')
os.dup2(out_file.fileno(), sys.stdout.fileno())


if arg[0] == "NEW" :
global g_opt_list
Message_obj = Message()
layerList = listLayers("ANSI_Layers")
layerList = str(layerList)
layerList = layerList.replace(",","")
for i in range(0,len(g_opt_list)):
g_opt_list[i] = []
os.dup2(save_fd, 1)
return layerList


elif arg[0] == "ADD_OPTIONAL_PARAM" :
global g_opt_list
global layers
global index
message_name = ""
layer_name = arg[1]
#print "Layer Name", layer_name
for layer in layers:
if layer == layer_name:
if
OPT_LIST_MAPPING.has_key(layer_name):
index =
OPT_LIST_MAPPING[layer_name]
break if arg[2] != 'Null':
optional_parameter_name =
str(arg[2]).replace("+",",")
for symbol in reverse_symbols:
if symbol in optional_parameter_name:
if
SYMBOL_REVERSE_MAPPING.has_key(symbol):
old_symbol =
SYMBOL_REVERSE_MAPPING[symbol]
optional_parameter_name
=optional_parameter_name.replace(symbol,old_symbol )


Message_obj.AddParam(message_name,layer_name,optio nal_parameter_name )
else : optional_parameter_name= 'Null'

add_delete_flag = 0
param_name = optional_parameter_name
show_opts(layer_name,add_delete_flag,param_name)
if int(add_delete_flag) == 0:
add_delete_flag = 0
if optional_parameter_name != "Null":
optList =
Message_obj.showOptionalParameters(layer_name,add_ delete_flag,optional_parameter_name)

g_opt_list[int(index)].append(optional_parameter_name)
for i in g_opt_list[int(index)]:
if
g_opt_list[int(index)].count(i) == 1:
optList =
Message_obj.showOptionalParameters(layer_name,add_ delete_flag,i)

displayoptparams(optList,layer_name,0,"Null")
i= "Null"
optional_parameter_name = "Null"
add_delete_flag = 1

os.dup2(save_fd, 1)
else:
print "Invalid Option"


def show_opts(layer_name,add_delete_flag,param_name):
global index
global g_opt_list
#param_name = "Null"
List =
Message_obj.showOptionalParameters(layer_name,add_ delete_flag,"Null")
if (len(List)== 0) :
return "None"

displayoptparams(List,layer_name,add_delete_flag,M essage_obj._message_name)
if param_name == 'Null':
for i in g_opt_list[int(index)]:
if g_opt_list[int(index)].count(i) == 1:
optList =
Message_obj.showOptionalParameters(layer_name,add_ delete_flag,i)

displayoptparams(optList,layer_name,0,"Null")
add_delete_flag = 1
return "None"

def main():

#choice = sys.argv[1]
print "####### choice ",
#Process_GUI_Command("NEW")
#list=CMSR.showOptionalParameters("SCCP",0)
#CMSR.saveXMLfile("CMSR2.xml","CMSR")

if __name__ == '__main__':
main()

--Thanks and bestregards.,
--Chandra

 
Reply With Quote
 
 
 
 
Fredrik Lundh
Guest
Posts: n/a
 
      09-05-2005
"chand" <> wrote:

> In my api.py file 'g_opt_list' is defined globally
> g_opt_list =[[],[],[],[],[],[],[]]
>
> when I run the py file, I am getting the Following Error
>
> SyntaxWarning: name 'g_opt_list' is used prior to global declaration
>
> Please let me know how to remove this error


you left out the line number from that error message, and the code you
posted doesn't even compile:

File "chand.py", line 67
elif arg[0] == "ADD_OPTIONAL_PARAM" :
^
IndentationError: unindent does not match any outer indentation level

(from what I can tell, you never assign to g_opt_list in that script, so it
sure looks like you didn't post the right version of your program. but
instead of reposting the code, look at the line Python told you to look
at; if you cannot figure out how to fix that, try to reduce the script to
a few lines before posting the code)

</F>



 
Reply With Quote
 
 
 
 
Daniel Dittmar
Guest
Posts: n/a
 
      09-05-2005
chand wrote:
> Hi.,
>
> In my api.py file 'g_opt_list' is defined globally
> g_opt_list =[[],[],[],[],[],[],[]]
>
> when I run the py file, I am getting the Following Error
>
> SyntaxWarning: name 'g_opt_list' is used prior to global declaration


g_del_opt_list =[[],[],[],[],[],[],[]]
#g_opt_list = []

It seems that your variable names got mixed up.

Daniel
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
warning when doubly liked list is defined globally chand Python 0 09-14-2005 01:20 PM
Warning when doubly linked list is defined gloablly chand Python 7 09-05-2005 07:28 PM
how to create a doubly liked list??? surrealtrauma C++ 3 05-05-2005 11:19 AM
Why is MAXINT doubly defined in system include files Marc Ferry C++ 11 10-13-2003 07:15 PM
Why is MAXINT doubly defined in system include files Marc Ferry C Programming 11 10-13-2003 07:15 PM



Advertisments
 



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57