folder Tahribat.com Forumları
linefolder Python
linefolder Python Kutula Fonksiyonu



Python Kutula Fonksiyonu

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cnr437
    cnr437's avatar
    Banlanmış Üye
    Kayıt Tarihi: 03/Nisan/2007
    Erkek

    class ToFile:
        def __init__(self):
            self.table=""
            self.filenum=1
            self.words=["Zaman","Devir","Volt","Akim","Sicaklik","Diger","Diger","Diger","Diger","Diger"]
        def now(self):
            return time.strftime("%d/%m/%y %T")

        def packVeri(self,veri):
            if veri:
                self.veri=veri
            else: return
            ls=os.listdir('logs/')
            if len(ls)==0:
                self.logfile=open('logs/'+str(self.filenum)+'.log','w')
                self.boxTable()
            else:
                self.logfile=open('logs/'+str(self.filenum)+'.log','a')
                self.continueTable()
            #self.logfile=open(sorted(ls[:-1]),'w')
            #if os.path.exist(sorted(ls[:-1]):
            
        def boxTable(self):
            words=self.words
            length=[]
            for each in range(len(words)):
                length.append(len(words[each]))
            n=sorted(length)[-1]+2
            self.table+=("+"+n*"-"+"+")+((len(words)-1)*("+"+n*"-"+"+"))+"\n"
            for word in words:
                if len(word)+2==n:
                    self.table+="| "+word+" |"
                else:
                    self.table+="| "+word+(n-len(word)-2)*" "+" |"
            self.table+=("\n+"+n*"-"+"+")+((len(words)-1)*("+"+n*"-"+"+"))+"\n"
            self.logfile.write(self.table)
            self.table=""
            self.continueTable()

        def continueTable(self):
            words=self.words
            values=[self.now()]
            values.extend(self.veri)
            length=[]
            for each in range(len(words)):
                length.append(len(words[each]))
            n=sorted(length)[-1]+2
            self.logfile.seek(0,2)
            for value in values:
                if len(value)+2==n:
                    self.table+="| "+value+" |"
                else:
                    self.table+="| "+value+(n-len(value)-2)*" "+" |"
            self.table+=("\n+"+n*"-"+"+")+((len(words)-1)*("+"+n*"-"+"+"))+"\n"
            self.logfile.write(self.table)
            self.logfile.close()

    ----------------------------------------------------------------------------------

    veri dediği python liste tipinde gelmesi gereken veridir,

    +--------+
    | cnr      |
    +--------+
    | cnr437  |
    +--------+

    gibi çıktıları dosya içine kaydedebiliyo, python kullanıp da log tutmak isteyenlerin işine yarayabilir,

    hazır bunu yapan python kütüphanesi de olabilir, bakmadım var mı yok mu die :) yazmıştım, burda da dursun.


    Bizim olduğumuz her yerde herşey bizim yüzümüzden olmuştur. Ben benim amk bana bişey olmasın!
Toplam Hit: 1889 Toplam Mesaj: 1