String 属性错误:';str';对象没有属性';从#u头';
我是python新手。看起来很多人都面临着类似的错误。解决其他人的相关错误并不能解决我的错误。为什么我会出现这个错误,我该如何修复它? 多谢各位 AttributeError:“str”对象没有“from_header”属性 以下是错误报告: *回溯(最近一次呼叫最后一次): 文件“/。/bin/make_json.py”,第169行,在 (headerList,headers)=readHeaders(args.hdr_文件) readHeaders中的文件“/home3/grad3/kpatel3/new_parser-gen/lib/python/HeaderLib.py”,第445行 from_fields=item.next_header.mapping.from_header.asList() AttributeError:“str”对象没有“from_header”属性 make:**[../examples/headers-datacenter.json]错误1 * 以下是我的代码:String 属性错误:';str';对象没有属性';从#u头';,string,object,attributes,attributeerror,String,Object,Attributes,Attributeerror,我是python新手。看起来很多人都面临着类似的错误。解决其他人的相关错误并不能解决我的错误。为什么我会出现这个错误,我该如何修复它? 多谢各位 AttributeError:“str”对象没有“from_header”属性 以下是错误报告: *回溯(最近一次呼叫最后一次): 文件“/。/bin/make_json.py”,第169行,在 (headerList,headers)=readHeaders(args.hdr_文件) readHeaders中的文件“/home3/grad3/kpat
class HeaderInfo:
"""Simple class for returning header info"""
def __init__(self, length, lenIsVar, matchBytes, match):
self.length = length
self.lenIsVar = lenIsVar
self.matchBytes = matchBytes
self.match = match
class HeaderInfoAll:
"""Simple class for returning header info for all length/match combos"""
def __init__(self, lenIsVar, lenBytes, lenMatch, lengths, nxtHdrBytes, nxtHdrMatch, nxtHdrs, defNxtHdrVal):
self.lenIsVar = lenIsVar
self.lenBytes = lenBytes
self.lenMatch = lenMatch
self.lengths = lengths
self.nxtHdrBytes = nxtHdrBytes
self.nxtHdrMatch = nxtHdrMatch
self.nxtHdrs = nxtHdrs
self.defNxtHdrVal = defNxtHdrVal
hdrLengths = {}
def readHeaders(filename):
"""Read all of the headers from a file"""
fh = open(filename)
data = fh.read()
fh.close()
parser = getHeaderBNF()
intRE = re.compile(r'^\d+$')
opRE = re.compile(r'^[+\-*]|<<|>>$')
refCounts = {}
headerList = []
headers = {}
for item in parser.parseString(data, True):
if item.hdr not in headers:
hdr = Header(item.hdr)
headerList.append(hdr)
headers[item.hdr] = hdr
if item.fields != '':
for fieldData in item.fields:
(name, width) = fieldData[0:2]
if width == '*':
width = None
else:
width = int(width)
hdr.addField(name, width)
if len(fieldData) == 3:
hdr.addExtractField(name)
if item.next_header != '':
if item.next_header.field != '':
hdr.setNextHeader(str(item.next_header.field))
else:
from_fields = item.next_header.mapping.from_header.asList()
类标题信息:
“”“用于返回标题信息的简单类”“”
def u u init u;(self、length、lenIsVar、matchBytes、match):
self.length=长度
self.lenIsVar=lenIsVar
self.matchBytes=matchBytes
self.match=匹配
班长:
“”“用于返回所有长度/匹配组合的标题信息的简单类”“”
def uuu init_uuuu(self、lenIsVar、lenBytes、lenMatch、length、nxthrbytes、nxthrmatch、nxthrs、defnxthrval):
self.lenIsVar=lenIsVar
self.lenBytes=lenBytes
self.lenMatch=lenMatch
self.length=长度
self.nxtHdrBytes=nxtHdrBytes
self.nxthrmatch=nxthrmatch
self.nxtHdrs=nxtHdrs
self.defnxthrval=defnxthrval
hdrLength={}
def readHeaders(文件名):
“”“从文件中读取所有标题”“”
fh=打开(文件名)
数据=fh.read()
fh.close()
parser=getHeaderBNF()
intRE=re.compile(r'^\d+$)
opRE=re.compile(r'^[+\-*]|$)
refCounts={}
校长名单=[]
标题={}
对于parser.parseString(数据,True)中的项:
如果item.hdr不在标题中:
hdr=标题(item.hdr)
headerList.append(hdr)
标题[item.hdr]=hdr
如果item.fields!='':
对于item.fields中的fieldData:
(名称、宽度)=字段数据[0:2]
如果宽度=“*”:
宽度=无
其他:
宽度=int(宽度)
hdr.addField(名称、宽度)
如果len(fieldData)==3:
hdr.addExtractField(名称)
如果item.next_标题!='':
如果item.next_header.field!='':
hdr.setNextHeader(str(item.next_header.field))
其他:
from_fields=item.next_header.mapping.from_header.asList()
有人能帮忙吗