Orjanp Skrevet 18. november 2006 Del Skrevet 18. november 2006 (endret) På en kommandolinje ftp klient får man gjerne fram informasjon om hastighet o.l rett under kommandolinjen ala dette: lftp ftp.uit.no:/pub/linux/rocks/rocks-mirror/rocks-4.2.1> get viz-4.2.1-0.i386.disk1.iso `viz-4.2.1-0.i386.disk1.iso' at 4457408 (1%) 106.2K/s eta:47m [Receiving data] Er det en enkel måte å gjøre dette i python? Nå tenker jeg kun på å oppdatere valgfri tekst rett under kommandolinjen, uten å skrive nylinje, nylinje o.s.v nedover konsollet. Å bruke kordinater vil vel ikke fungere, fordi man på forhånd ikke vet hvor kommandolinjen befinner seg. Ørjan... Endret 19. november 2006 av Orjanp Lenke til kommentar
meron Skrevet 18. november 2006 Del Skrevet 18. november 2006 (endret) Hei Det bør vel forklare det meste: import sys, time sys.stdout.write("Linje med masse informasjon") time.sleep(2) sys.stdout.write("\rOppdatert linje med masse informasjon") i = 0 sys.stdout.write("\nFra 0 til 100 prosent...") while i <= 100: if i == 0: sys.stdout.write("\n") sys.stdout.write("\r" + str(i) + "%") i+=1 time.sleep(0.1) sys.stdout.write("\n") På linux (kanksje windows også?) må du kjøre det: python -u «fil.py» Du kan også bruke "\b" (backspace) til å gå bakover. Endret 18. november 2006 av meron Lenke til kommentar
Orjanp Skrevet 19. november 2006 Forfatter Del Skrevet 19. november 2006 Takk for hjelpen. Er det mulig å finne filstørrelse på en fil som åpnes? Ørjan... Lenke til kommentar
dabear Skrevet 19. november 2006 Del Skrevet 19. november 2006 os.stat(filename).st_size Lenke til kommentar
Orjanp Skrevet 19. november 2006 Forfatter Del Skrevet 19. november 2006 (endret) Takk igjen. Er den os spesifikk, slik at det ikke fungerer i Windows? Blir mye lette spørsmål her innser jeg. Det er iallefall litt aktivitet her da. Når jeg overfører en fil, bruker jeg en mottaksbuffer på 1024 bytes. Men hvis jeg legger sammen alle bytsene som er sendt, får jeg ikke en verdi som er like stor som fila jeg overførte. Er det fordi noen av de 1024 bytes er informasjon som er relatert til tcp protokollen? Hvor mye er dette i så fall? EDIT: Ser at verdien nesten blir(fila er 3KB mindre enn beregnet) korrekt hvis jeg beregner hos avsender. Men ikke hos mottaker(ca. 60MB for stor). Fila er 171MB. EDIT2: Verdien hos mottaker variere endel, muligens p.g.a at pakker mistes? En annen ting. La oss si at jeg har. i = 2.12345 Hvordan skriver jeg ut verdien med to desimaler? Må jeg bruke decimal funksjonene? EDIT3: Det gjøres slik print "%.3g" %i Ørjan... Endret 19. november 2006 av Orjanp Lenke til kommentar
meron Skrevet 20. november 2006 Del Skrevet 20. november 2006 Klart det blir gjort sånn Det med filstørrelsane dine har eg ikkje peiling på ... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå