How to read and write settings to a file

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# Easily read and write variables from file.
import codecs
path = "E:\\Python\demo.ini"
newline = "\n"
def init_settings():
f = codecs.open(path, 'w', 'utf_8')
settings = "variable_1" + newline
settings += "variable_2" + newline
settings += "variable_3" + newline
f.write(settings)
f.close()
init_settings()
def read_settings_array():
f = codecs.open(path, 'r', 'utf8')
settingsfile = f.read()
settings = settingsfile.split("\n");
f.close()
return settings
print read_settings_array() # <- whole array, or...
def write_setting(data,index):
settings = read_settings_array()
newarray=""
for i in range(len(settings)):
if i == index:
settings[i] = data
newarray += settings[i] + "\n"
f = codecs.open(path, 'w', 'utf_8')
f.write(newarray)
f.close()
write_setting("FOO",2) # <- Update index as you like
print read_settings_array()[2] #... get em by index
#To write at the end of the text that is already in a file, we open it in "append" mode
f=codecs.open(path, 'a', 'utf_8')
f.write("This line will be at the end of the existing text")
f.close()