Python Code - TypeError: loop over non-sequence
Python Code - TypeError: loop over non-sequence
(OP)
hello, we are getting this issue with a Python Program. Anyone has any clue?
Traceback (most recent call last):
File "cbl_data.py", line 149, in ?
field_list = create_field_list('cbl_data.cfg')
File "cbl_data.py", line 35, in create_field_list
for line in open(config_file):
TypeError: loop over non-sequence
The config file details as follows.
x:2 # character field - probably key
p:17 # unpacked numeric
z:2
x:19
x:4
x:10
z:4
x:1
z:3
x:1
p:12
p:12
x:10
x:4
Code
def create_field_list(config_file):
"""returns list of fields definition from the config file"""
config_list = []
nr_lines = 0
for line in open(config_file):
nr_lines += 1
cfg_line = line
# remove comments from line
if '#' in cfg_line:
cfg_line=cfg_line[:cfg_line.index('#')]
# strip blanks from both ends
cfg_line = cfg_line.strip()
# process not empty lines
if len(cfg_line) > 0:
if ':' in cfg_line:
# to uppercase
cfg_line=cfg_line.upper()
# split into a list
cfg_line_list=cfg_line.split(':')
if cfg_line_list[1].isdigit():
cfg_line_list[1] = string.atoi(cfg_line_list[1])
# compute the length of Packed Decimal (COMP-3)
if cfg_line_list[0]=='P':
cfg_line_list[1]=cfg_line_list[1]/2 + 1
#print cfg_line_list
config_list.append(cfg_line_list)
else:
print "Error in config line %d:" % nr_lines
print "'%s'" % cfg_line
print "Data type length is not numeric !"
sys.exit()
else:
print "Error in config line %d:" % nr_lines
print "'%s'" % cfg_line
print "Line should have a form <DataType>:<length> !"
sys.exit()
# return list of fields
return config_list
Traceback (most recent call last):
File "cbl_data.py", line 149, in ?
field_list = create_field_list('cbl_data.cfg')
File "cbl_data.py", line 35, in create_field_list
for line in open(config_file):
TypeError: loop over non-sequence
The config file details as follows.
x:2 # character field - probably key
p:17 # unpacked numeric
z:2
x:19
x:4
x:10
z:4
x:1
z:3
x:1
p:12
p:12
x:10
x:4
Code
def create_field_list(config_file):
"""returns list of fields definition from the config file"""
config_list = []
nr_lines = 0
for line in open(config_file):
nr_lines += 1
cfg_line = line
# remove comments from line
if '#' in cfg_line:
cfg_line=cfg_line[:cfg_line.index('#')]
# strip blanks from both ends
cfg_line = cfg_line.strip()
# process not empty lines
if len(cfg_line) > 0:
if ':' in cfg_line:
# to uppercase
cfg_line=cfg_line.upper()
# split into a list
cfg_line_list=cfg_line.split(':')
if cfg_line_list[1].isdigit():
cfg_line_list[1] = string.atoi(cfg_line_list[1])
# compute the length of Packed Decimal (COMP-3)
if cfg_line_list[0]=='P':
cfg_line_list[1]=cfg_line_list[1]/2 + 1
#print cfg_line_list
config_list.append(cfg_line_list)
else:
print "Error in config line %d:" % nr_lines
print "'%s'" % cfg_line
print "Data type length is not numeric !"
sys.exit()
else:
print "Error in config line %d:" % nr_lines
print "'%s'" % cfg_line
print "Line should have a form <DataType>:<length> !"
sys.exit()
# return list of fields
return config_list
RE: Python Code - TypeError: loop over non-sequence
The only thing I can think to is that open() was re-declared somewhere before that code. To check it, insert this before the line throwing the error :
CODE --> Python
Next time please post your code between [code] and [/code] TGML tags.
Feherke.
feherke.ga
RE: Python Code - TypeError: loop over non-sequence
CODE
RE: Python Code - TypeError: loop over non-sequence
Your code works fine for me with Python 2.7.6. Of course, the parse_cbl_data() call fails as I have no real athacct_dly_init.dat file. But the create_field_list() you have problem with, works with the sample data you posted earlier.
Sorry, I have no further idea.
Feherke.
feherke.ga
RE: Python Code - TypeError: loop over non-sequence
Some years ago I posted this code here
http://www.tek-tips.com/viewthread.cfm?qid=1510638
to solve the problem with a COBOL file described here
http://www.tek-tips.com/viewthread.cfm?qid=1508458
It was only written to solve this particular problem and it isn't universal anyway.
Have you tried the code first with the original file posted in the COBOL forum above?
What Python version are you using? I wrote it with Python 2.5.x . As Feherke mentioned it should probably work with 2.7.x but not with 3.x (I never moved to Python 3).
I thing the COBOL original file in the forum above was cretated by RM/COBOL compiler for DOS. So it wasn't probably in EBCDIC but in ASCII.
Maybe this Record Editor could help you
http://record-editor.sourceforge.net/
It's mentioned here
http://www.tek-tips.com/viewthread.cfm?qid=1566663
RE: Python Code - TypeError: loop over non-sequence
$>python
Python 2.6.6 (r266:84292, Nov 21 2013, 10:50:32)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.version_info
(2, 6, 6, 'final', 0)
>>>
RE: Python Code - TypeError: loop over non-sequence
If you get an errors, python says you on which line the error occured. So you can print the variables on this line to discover what is wrong.
RE: Python Code - TypeError: loop over non-sequence
_________________
Bob Rashkin
RE: Python Code - TypeError: loop over non-sequence
The Python script getting failed with the below error message.
==============================================================================
ñ@;4652908.96;1;ððððððððððððððððððñ;×äÙÇ;òððô`ðô`òð;0;ð;176;ð;125010108.20;135.35;ñð`ðõ`ðòÃÙ;âòñ@
* Processing 0002 record
''
''
''
Traceback (most recent call last):
File "cbl-data2.py", line 152, in <module>
parse_cbl_data('athacct_dly_init.dat',4051,50,field_list,dbg_mode=1)
File "cbl-data2.py", line 116, in parse_cbl_data
fld_data_num=packed2num(field_data)
File "cbl-data2.py", line 23, in packed2num
i = a[-1]
IndexError: array index out of range
==============================================================================
where cbl-data2.py is the python code I have shared before.
RE: Python Code - TypeError: loop over non-sequence
CODE
RE: Python Code - TypeError: loop over non-sequence
***>python cbl-data2.py athacct_dly_init.dat cbl_data.cfg
* Processing 0001 record
'\xf1@\x00\x00\x00\x00FR\x90\x89l\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xd7\xe4\xd9\xc7\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0\x00\x00\x00\x00\xf0\xf1\xf7\xf6\xf0\x00\x12P\x10\x10|\x00\x00\x00\x00\x00\x0c\xf2\xf0\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84U\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tXl\x01\x01\x07g)\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84V\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX|\x01\x01\x07g)\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84V\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX\x8c\x01\x01\x07g),@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84V,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX\x9c\x01\x02\x07Tg,@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84V<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x0c\x01\x02\x07Tg<@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84VL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf7\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x1c\x01\x02\x07TgL@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf8\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY,\x01\x03\x07a"l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84Vl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf9\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY<\x01\x03\x07a"|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf0\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tYL\x01\x03\x07a"\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf1\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\\\x01\x03\x07a"\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84V\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf2\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tYl\x01\x04\x07D\x83\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf3\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY|\x01\x04\x07D\x83l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf4\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x8c\x01\x04\x07D\x83|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf5\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x9c\x01\x04\x07D\x83\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84W<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf6\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x0c\x01\x05\x05CDl@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84WL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf7\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x1c\x01\x05\x05CD|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84W\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf8\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`,\x01\x05\x05CD\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84Wl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf9\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`<\x01\x05\x05CD\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf6@\x00\x00\x00\x00I0\x84W\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf1\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`L\x01\x06\x080%L@@@@@@@@@@\xc3\xd9\xe2\xf2\xf6@\x00\x00\x00\x00I0\x84W\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf2\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\\\x01\x06\x080%\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf4\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`l\x01\x07\x07TGl@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf5\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`|\x01\x07\x07TG|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf6\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x8c\x01\x07\x07TG\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf7\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x9c\x01\x07\x07TG\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84XL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf8\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x0c\x01\x08\x07YA\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84X\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf9\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x1c\x01\x08\x07YA,@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84Xl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf0\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta,\x01\x08\x07YA<@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84X|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf1\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta<\x01\x08\x07YAL@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84X\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf2\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81taL\x01\t\x07D5L@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84X\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf3\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\\\x01\t\x07D5\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84Y\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf4\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tal\x01\t\x07D5l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84Y\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf5\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta|\x01\t\x07D5|@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84Y,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf6\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x8c\x01\x10\x05C\x99\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84Y<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf8\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x9c\x01\x10\x05C\x99\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84YL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf9\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x0c\x01\x10\x05C\x99,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Y\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf1\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x1c\x01\x11\x07\x95\x96,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Yl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf2\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb,\x01\x11\x07\x95\x96<@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Y|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf3\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb<\x01\x11\x07\x95\x96L@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84Y\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf4\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tbL\x01\x12\x07U1\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84Y\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf5\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\\\x01\x12\x07U2\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84`\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf6\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tbl\x01\x12\x07U2\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84`\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf7\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb|\x01\x12\x07U2,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf8\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x8c\x01\x13\x07I\x19l@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf9\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x9c\x01\x13\x07I\x19|@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`L\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf0\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc\x0c\x01\x13\x07I\x19\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf1\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc\x1c\x01\x13\x07I\x19\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`l\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf2\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc,\x01\x14\x07DF\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf3\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc<\x01\x14\x07DG\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf5\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tcL\x01\x14\x07DG\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\n'
'\xf1@'
ñ@
'\x00\x00\x00\x00FR\x90\x89l'
4652908.96
'\x00\x01'
1
'\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1'
ððððððððððððððððððñ
'\xd7\xe4\xd9\xc7'
×äÙÇ
'\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0'
òððô`ðô`òð
'\x00\x00\x00\x00'
0
'\xf0'
ð
'\xf1\xf7\xf6'
176
'\xf0'
ð
'\x00\x12P\x10\x10|\x00'
125010108.20
'\x00\x00\x00\x00\x0c\xf2\xf0'
135.35
'\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9'
ñð`ðõ`ðòÃÙ
'\xe2\xf2\xf1@'
âòñ@
['\xf1@', '4652908.96', '1', '\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1', '\xd7\xe4\xd9\xc7', '\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0', '0', '\xf0', '176', '\xf0', '125010108.20', '135.35', '\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9', '\xe2\xf2\xf1@']
ñ@;4652908.96;1;ððððððððððððððððððñ;×äÙÇ;òððô`ðô`òð;0;ð;176;ð;125010108.20;135.35;ñð`ðõ`ðòÃÙ;âòñ@
* Processing 0002 record
''
''
''
Traceback (most recent call last):
File "cbl-data2.py", line 152, in <module>
parse_cbl_data('athacct_dly_init.dat',4051,50,field_list,dbg_mode=1)
File "cbl-data2.py", line 116, in parse_cbl_data
fld_data_num=packed2num(field_data)
File "cbl-data2.py", line 23, in packed2num
i = a[-1]
IndexError: array index out of range
RE: Python Code - TypeError: loop over non-sequence
***>python cbl-data2.py athacct_dly_init.dat cbl_data.cfg
* Processing 0001 record
'\xf1@\x00\x00\x00\x00FR\x90\x89l\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xd7\xe4\xd9\xc7\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0\x00\x00\x00\x00\xf0\xf1\xf7\xf6\xf0\x00\x12P\x10\x10|\x00\x00\x00\x00\x00\x0c\xf2\xf0\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84U\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tXl\x01\x01\x07g)\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84V\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX|\x01\x01\x07g)\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf1@\x00\x00\x00\x00I0\x84V\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX\x8c\x01\x01\x07g),@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84V,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tX\x9c\x01\x02\x07Tg,@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84V<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x0c\x01\x02\x07Tg<@@@@@@@@@@\xc3\xd9\xe2\xf2\xf2@\x00\x00\x00\x00I0\x84VL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf7\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x1c\x01\x02\x07TgL@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf8\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY,\x01\x03\x07a"l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84Vl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf9\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY<\x01\x03\x07a"|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf0\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tYL\x01\x03\x07a"\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf3@\x00\x00\x00\x00I0\x84V\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf1\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\\\x01\x03\x07a"\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84V\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf2\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tYl\x01\x04\x07D\x83\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf3\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY|\x01\x04\x07D\x83l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf4\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x8c\x01\x04\x07D\x83|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf4@\x00\x00\x00\x00I0\x84W,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf5\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tY\x9c\x01\x04\x07D\x83\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84W<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf6\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x0c\x01\x05\x05CDl@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84WL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf7\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x1c\x01\x05\x05CD|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84W\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf8\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`,\x01\x05\x05CD\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf5@\x00\x00\x00\x00I0\x84Wl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1\xf9\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`<\x01\x05\x05CD\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf6@\x00\x00\x00\x00I0\x84W\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf1\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`L\x01\x06\x080%L@@@@@@@@@@\xc3\xd9\xe2\xf2\xf6@\x00\x00\x00\x00I0\x84W\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf2\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\\\x01\x06\x080%\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf4\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`l\x01\x07\x07TGl@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf5\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`|\x01\x07\x07TG|@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf6\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x8c\x01\x07\x07TG\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf7@\x00\x00\x00\x00I0\x84X<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf7\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81t`\x9c\x01\x07\x07TG\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84XL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf8\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x0c\x01\x08\x07YA\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84X\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf2\xf9\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x1c\x01\x08\x07YA,@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84Xl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf0\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta,\x01\x08\x07YA<@@@@@@@@@@\xc3\xd9\xe2\xf2\xf8@\x00\x00\x00\x00I0\x84X|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf1\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta<\x01\x08\x07YAL@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84X\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf2\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81taL\x01\t\x07D5L@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84X\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf3\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\\\x01\t\x07D5\\@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84Y\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf4\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tal\x01\t\x07D5l@@@@@@@@@@\xc3\xd9\xe2\xf2\xf9@\x00\x00\x00\x00I0\x84Y\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf5\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta|\x01\t\x07D5|@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84Y,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf6\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x8c\x01\x10\x05C\x99\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84Y<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf8\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81ta\x9c\x01\x10\x05C\x99\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc1@\x00\x00\x00\x00I0\x84YL\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf3\xf9\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x0c\x01\x10\x05C\x99,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Y\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf1\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x1c\x01\x11\x07\x95\x96,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Yl\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf2\xf6\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb,\x01\x11\x07\x95\x96<@@@@@@@@@@\xc3\xd9\xe2\xf2\xc2@\x00\x00\x00\x00I0\x84Y|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf3\xf4\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb<\x01\x11\x07\x95\x96L@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84Y\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf4\xf2\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tbL\x01\x12\x07U1\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84Y\x9c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf5\xf0\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\\\x01\x12\x07U2\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84`\x0c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf6\xf9\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tbl\x01\x12\x07U2\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc3@\x00\x00\x00\x00I0\x84`\x1c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf7\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb|\x01\x12\x07U2,@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`,\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf8\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x8c\x01\x13\x07I\x19l@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`<\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf4\xf9\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tb\x9c\x01\x13\x07I\x19|@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`L\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf0\xf7\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc\x0c\x01\x13\x07I\x19\x8c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc4@\x00\x00\x00\x00I0\x84`\\\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf1\xf5\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc\x1c\x01\x13\x07I\x19\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`l\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf2\xf3\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc,\x01\x14\x07DF\x9c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`|\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf3\xf1\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tc<\x01\x14\x07DG\x0c@@@@@@@@@@\xc3\xd9\xe2\xf2\xc5@\x00\x00\x00\x00I0\x84`\x8c\x00\x01\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf5\xf5\xf8\xc3\xd9\xe2\xf2\xf2\xf0\xf0\xf6`\xf0\xf8`\xf1\xf6\x00\x00\x03\xfd\xf1\xf3\xf0\xf0\xf1\x00\x14\x81tcL\x01\x14\x07DG\x1c@@@@@@@@@@\xc3\xd9\xe2\xf2\n'
'\xf1@'
ñ@
'\x00\x00\x00\x00FR\x90\x89l'
FRl
array('B', [0, 0, 0, 0, 70, 82, 144, 137, 108])
4652908.96
'\x00\x01'
1
'\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1'
ððððððððððððððððððñ
'\xd7\xe4\xd9\xc7'
×äÙÇ
'\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0'
òððô`ðô`òð
'\x00\x00\x00\x00'
0
'\xf0'
ð
'\xf1\xf7\xf6'
176
'\xf0'
ð
'\x00\x12P\x10\x10|\x00'
P|
array('B', [0, 18, 80, 16, 16, 124, 0])
125010108.20
'\x00\x00\x00\x00\x0c\xf2\xf0'
òð
array('B', [0, 0, 0, 0, 12, 242, 240])
135.35
'\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9'
ñð`ðõ`ðòÃÙ
'\xe2\xf2\xf1@'
âòñ@
['\xf1@', '4652908.96', '1', '\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf0\xf1', '\xd7\xe4\xd9\xc7', '\xf2\xf0\xf0\xf4`\xf0\xf4`\xf2\xf0', '0', '\xf0', '176', '\xf0', '125010108.20', '135.35', '\xf1\xf0`\xf0\xf5`\xf0\xf2\xc3\xd9', '\xe2\xf2\xf1@']
ñ@;4652908.96;1;ððððððððððððððððððñ;×äÙÇ;òððô`ðô`òð;0;ð;176;ð;125010108.20;135.35;ñð`ðõ`ðòÃÙ;âòñ@
* Processing 0002 record
''
''
''
array('B')
Traceback (most recent call last):
File "cbl-data2.py", line 154, in <module>
parse_cbl_data('athacct_dly_init.dat',4051,50,field_list,dbg_mode=1)
File "cbl-data2.py", line 118, in parse_cbl_data
fld_data_num=packed2num(field_data)
File "cbl-data2.py", line 24, in packed2num
i = a[-1]
IndexError: array index out of range
RE: Python Code - TypeError: loop over non-sequence
CODE
if __name__ == "__main__": #print packed2num('\x12\x34\x5f') #print zoned2num('\xf1\xf2\xd3') #print zoned2num('\x01\x02\x03') field_list = create_field_list('cbl_data.cfg') # record_size=774 # nr_records=277 parse_cbl_data('athacct_dly_init.dat',4051,50,field_list,dbg_mode=1)
Before using this program you have to know the record size and number of records properly.
I found out the record size an number of records probably looking into the file with an hex editor - see my comment in this thread
http://www.tek-tips.com/viewthread.cfm?qid=1508458
RE: Python Code - TypeError: loop over non-sequence
Here is how the Layout looks like for EBCDIC file. And the corresponding config file. Do you think anything wrong inmapping?
ebcdic string(2) A;
packed decimal(17,0) B;
signed big endian integer(2) C;
ebcdic string(19) D;
ebcdic string(4) E;
ebcdic string(10) F;
signed big endian integer(4) G;
ebcdic string(1) H;
ebcdic decimal(3,0) I;
ebcdic string(1) J;
packed decimal(12,0) K;
packed decimal(12,0) L;
ebcdic string(10) M;
ebcdic string(4) N;
x:2 # character field - probably key
p:17 # unpacked numeric
z:2
x:19
x:4
x:10
z:4
x:1
z:3
x:1
p:12
p:12
x:10
x:4
Actual Data Output Should Be:
Record 1:
[record
A "1 "
B " 465290896"
C 1
D "0000000000000000001"
E "PURG"
F "2004-04-20"
G 0
H "0"
I "176"
J "0"
K " 125010107"
L " 0"
M "2010-05-02"
N "XXX2"]]
But after execution it comes as. First few things matches.
ñ@;4652908.96;1;ððððððððððððððððððñ;×äÙÇ;òððô`ðô`òð;0;ð;176;ð;125010108.20;135.35;ñð`ðõ`ðòÃÙ;âòñ@
;1201;ð;151515151515.15;151515151515.15;ððóõÃÙâòòð;ðö`ð
;10767293240404.04;0;@@@@ÃÙâòò@
òò;400000000049308.45;120;ðððððððððððððððððõ;ñÃÙâ;òòððö`ðø`ñ;6003;ý;130;ð;151001481745.90;1020754674.24;@@@@@@@@@Ã;Ùâòò
ðð;1515151515151515.15;78;ÃÙâòòððö`ðø`ñötYT;8200;@;0;@;40404124404.35;153400000000.04;0
V\ððö`
RE: Python Code - TypeError: loop over non-sequence
Maybe examine the file in hexeditor and try to write your own translation for the strings.
RE: Python Code - TypeError: loop over non-sequence
ebcdic decimal(3,0) I;
should be
p:3 /packed/
and not
z:3 /zoned/