Текстовый файл parse, чтобы получить список имен файлов .oPython

Программы на Python
Anonymous
 Текстовый файл parse, чтобы получить список имен файлов .o

Сообщение Anonymous »

У меня есть файл TXT, как: < /p>
test.txt
Symbols from __ctype_tab.o:

Name Value Class Type Size Line Section

__ctype |00000000| D | OBJECT|00000004| |.data
__ctype_tab |00000000| r | OBJECT|00000101| |.rodata

Symbols from _ashldi3.o:

Name Value Class Type Size Line Section

__ashldi3 |00000000| T | FUNC|00000050| |.text

Symbols from _ashrdi3.o:

Name Value Class Type Size Line Section

__ashrdi3 |00000000| T | FUNC|00000058| |.text

Symbols from _fixdfdi.o:

Name Value Class Type Size Line Section

__fixdfdi |00000000| T | FUNC|0000004c| |.text
__fixunsdfdi | | U | NOTYPE| | |*UND*

Symbols from _fixsfdi.o:

Name Value Class Type Size Line Section

__fixsfdi |00000000| T | FUNC|0000004c| |.text
__fixunssfdi | | U | NOTYPE| | |*UND*

Symbols from _fixunssfdi.o:

Name Value Class Type Size Line Section

__cmpdi2 | | U | NOTYPE| | |*UND*
__fixunssfdi |00000000| T | FUNC|00000228| |.text
__floatdidf | | U | NOTYPE| | |*UND*
< /code>
В моей ситуации мне будет предоставлена ​​функция, чей тип нелен. Мне нужно искать текст и найти, в котором он определен (т.е. с типовым фанком). Когда я получаю файл .o, я могу рассматривать другие функции как Notype. Наконец, я хочу вернуть список имен всех файлов .o, которые содержали функции. < /P>
Мой кусок кода: < /p>
notypeDict , funcDict = {} , {}
notypeList , funcList = [] , []
currObj , prevObj = '' , ''

fp = open(r'C:\test.txt','r') # file path cms here
fileList = fp.readlines()

for line in fileList:
if '.o' in line: # line containg .o
currObj=line.split()[-1][0:-1]
if '|' not in line: # line containg |
pass
else: # other lines
dataList=[dataItem.strip() for dataItem in line.strip().split('|')] # a list of each word in line
name=dataList[0].strip() # name of the function
notypeDict[prevObj] = notypeList # notypeDict is a dictionary which contains .o as key and a list of NOTYPE function name
funcDict[prevObj] = funcList # funcDict is a dictionary which contains .o as key and a list of FUNC function names

if prevObj == currObj :
pass
if prevObj != currObj :
notypeList , funcList = [] , []

if dataList[3] == 'NOTYPE' :
notypeList.append(name)
if dataList[3] == 'FUNC' :
funcList.append(name)

prevObj = currObj

print 'notypeDict' , notypeDict
print '\n\nfuncDict' , funcDict
< /code>
Здесь я получу два словаря, notypedict и funcdict. > Funcdict имеет .o как ключ и список функций func как значение. < /p>
Я достиг до здесь. цель?

Подробнее здесь: https://stackoverflow.com/questions/862 ... file-names

Вернуться в «Python»