我有一个python文件收集数据并将其保存到Parse app DB中. Python文件还将一些数据传递到另一个文件中,该文件应将传递的数据保存到不同的Parse应用程序中.
在伪代码中:
file1.py
register('key1','restKey1')file2.class1(passedData)file1.saveData
file2.py
register('key2','restKey2')file2.saveData
当我单独运行文件时,代码完美运行.但是,当我通过第一个文件执行程序时,数据全部保存到第一个Parse应用程序数据库而不是第二个.
解决方法 我想你可以使用这样的模式:#!/usr/bin/pythonclass SourceInterface(object): def get_data(self): raise NotImplementedError("Subclasses should implement this!")class DestinationInterface(object): def put_data(self,data): raise NotImplementedError("Subclasses should implement this!")class fileSource(SourceInterface): def __init__(self,filename): self.filename = filename def get_data(self): lines = None with open(self.filename,'r') as f: lines = f.readlines() if lines: with open(self.filename,'w') as f: if lines[1:]: f.writelines(lines[1:]) return lines[0]class fileDestination(DestinationInterface): def __init__(self,filename): self.filename = filename def put_data(self,data): print 'put data',data with open(self.filename,'a+') as f: f.write(data)class DataProcessor(object): sources_List = [] destinitions_List = [] def register_source(self,source): self.sources_List.append(source) def register_destinition(self,destinition): self.destinitions_List.append(destinition) def process(self): for source in self.sources_List: data = source.get_data() if data: for destinition in self.destinitions_List: destinition.put_data(data)if __name__ == '__main__': processor = DataProcessor() processor.register_source(fileSource('/tmp/source1.txt')) processor.register_source(fileSource('/tmp/source2.txt')) processor.register_destinition(fileDestination('/tmp/destinition1.txt')) processor.register_destinition(fileDestination('/tmp/destinition2.txt')) processor.process()
只需定义您自己的Source和Destination类
总结以上是内存溢出为你收集整理的python – 将数据保存到两个单独的Parse应用程序中全部内容,希望文章能够帮你解决python – 将数据保存到两个单独的Parse应用程序中所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)