Γράψτε μια νέα εντολή δεν εκτυπώνει πάντα στην ίδια γραμμή

ψήφοι
0

Είμαι χρησιμοποιώντας τις παρακάτω εντολές μέσα σε ένα βρόχο για να ανοίξετε ένα αρχείο .txt και να γράψει κάποια αποτελέσματα στο αρχείο.

with open ('results.txt', 'a') as file: 
    file.write('%s %d %s %s \n' %(timestamp, v, str(dcur), str(gcur)))

Ωστόσο, τα αποτελέσματα δεν εκτυπώνονται στην ίδια γραμμή στο αρχείο .txt και str (gcur) εμφανίζεται στην επόμενη.

Γιατί συμβαίνει αυτό και πώς θα μπορούσε να λυθεί;

Δημοσιεύθηκε 24/10/2019 στις 12:53
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
1

Πιθανότατα οφείλεται στο γεγονός ότι όταν καλείτε strνα dcurπροσθέτει μια "\n"κάπως.

Μπορείτε να το stript:

with open ('results.txt', 'a') as file: 
    file.write('%s %d %s %s \n'.format(timestamp, v, str(dcur).rstript("\n"), str(gcur).rstript("\n")))
Απαντήθηκε 24/10/2019 στις 12:57
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more