template_class.py
Go to the documentation of this file.
1
# Author: Moritz Reichert
2
# Date : 26.09.2024
3
import
numpy
as
np
4
5
6
class
template
(object):
7
"""
8
Class to read a WinNet template file.
9
"""
10
11
def
__init__
(self, path):
12
"""
13
Initialize the template class.
14
"""
15
self.
path
= path
16
17
18
def
read_data
(self):
19
"""
20
Read the data from the template file and store it in a dictionary.
21
"""
22
# Create an empty dictionary to store the entries
23
self.
__entries
= {}
24
25
# Read the data from the file
26
with
open(self.
path
,
'r'
)
as
f:
27
self.
data
= f.readlines()
28
for
line
in
self.
data
:
29
if
line.strip().startswith(
'#'
):
30
continue
31
32
if
line.strip() ==
""
:
33
continue
34
35
key = line.split(
"="
)[0].strip()
36
value = line.split(
"="
)[1].strip().replace(
'"'
,
''
).replace(
"'"
,
""
)
37
self.
__entries
[key] = value
38
39
@property
40
def
entries
(self):
41
"""
42
Get the entries of the template file.
43
"""
44
# Check if entry exists.
45
#print all attributes of the object
46
if
not
hasattr(self,
'_template__entries'
):
47
self.
read_data
()
48
return
self.
__entries
49
50
51
def
__getitem__
(self, key):
52
"""
53
Get the value of a specific key.
54
"""
55
if
not
hasattr(self,
'_template__entries'
):
56
self.
read_data
()
57
return
self.
entries
[key]
58
59
def
__setitem__
(self, key, value):
60
"""
61
Set the value of a specific key.
62
"""
63
if
not
hasattr(self,
'_template__entries'
):
64
self.
read_data
()
65
self.
__entries
[key] = value
66
67
if
__name__ ==
'__main__'
:
68
# Example:
69
path =
'../../runs/test'
70
t =
template
(path)
71
print(t[
"isotopes_file"
])
src_files.template_class.template.__init__
def __init__(self, path)
Definition:
template_class.py:11
src_files.template_class.template.__setitem__
def __setitem__(self, key, value)
Definition:
template_class.py:59
src_files.template_class.template.path
path
Definition:
template_class.py:15
src_files.template_class.template
Definition:
template_class.py:6
src_files.template_class.template.read_data
def read_data(self)
Definition:
template_class.py:18
src_files.template_class.template.__entries
__entries
Definition:
template_class.py:23
src_files.template_class.template.data
data
Definition:
template_class.py:27
src_files.template_class.template.__getitem__
def __getitem__(self, key)
Definition:
template_class.py:51
src_files.template_class.template.entries
def entries(self)
Definition:
template_class.py:40
bin
summary_script
src_files
template_class.py