diff --git a/file_object.py b/file_object.py index dd5cca6..2a65515 100644 --- a/file_object.py +++ b/file_object.py @@ -54,11 +54,12 @@ class SFileObject: _content = [str(x) for x in content] file.write("{content}\n".format(content=" ".join(_content))) - def has(self, tower_number): # 塔位号是否存在S文件中。 + def has(self, tower_number): # 塔位号是否存在S文件中。可能存在多行的情况。 + indexes=[] for index, content in enumerate(self._content): if content[0] == tower_number: - return index - return 0 + indexes.append(index) + return indexes def content(self): return self._content @@ -79,8 +80,8 @@ class SFileAsSingle: ret = [] for s in s_file: d_file_obj = SFileObject(s) - index = d_file_obj.has(tower_number) - if index > 0: + indexes = d_file_obj.has(tower_number) + for index in indexes: ret.append((d_file_obj, index)) return ret