Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Checking file if exist then append record

Tags:

python

I am creating a log file with line by line records.

1- If file does not exist, it should create file and append header row and the record 2- if it exists, check the text timeStamp in first line. If it exist then append the record otherwise add header columns and record itself

I tried both w,a and r+; nothing worked for me. Below is my code:

logFile = open('Dump.log', 'r+')
datalogFile = log.readline()
if 'Timestamp' in datalogFile:
    logFile.write('%s\t%s\t%s\t%s\t\n'%(timestamp,logread,logwrite,log_skipped_noweight))
    logFile.flush()
else:
    logFile.write('Timestamp\t#Read\t#Write\t#e\n')
    logFile.flush()
    logFile.write('%s\t%s\t%s\t%s\t\n'%(timestamp,logread,logwrite,log_skipped))
    logFile.flush()

Code fails if file don't exist

like image 776
Volatil3 Avatar asked Jun 16 '26 05:06

Volatil3


1 Answers

Use 'a+' mode:

logFile = open('Dump.log', 'a+')

description:

a+
Open for reading and writing. The file is created if it does not exist. The stream is positioned at the end of the file. Subsequent writes to the file will always end up at the then current end of file, irrespective of any intervening fseek(3) or similar

like image 116
ndpu Avatar answered Jun 18 '26 18:06

ndpu



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!