Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F113121903
purge_dict.py
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Thu, May 15, 06:41
Size
1 KB
Mime Type
text/x-python
Expires
Sat, May 17, 06:41 (1 d, 23 h)
Engine
blob
Format
Raw Data
Handle
26182577
Attached To
R6746 RationalROMPy
purge_dict.py
View Options
#!/usr/bin/python
# Copyright (C) 2018 by the RROMPy authors
#
# This file is part of RROMPy.
#
# RROMPy is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# RROMPy is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with RROMPy. If not, see <http://www.gnu.org/licenses/>.
#
import
warnings
from
rrompy.utilities.find_dict_str_key
import
findDictStrKey
from
rrompy.utilities.types
import
ListAny
,
DictAny
__all__
=
[
'purgeDict'
]
def
purgeDict
(
dct
:
DictAny
,
allowedKeys
:
ListAny
=
[],
silent
:
bool
=
False
,
complement
:
bool
=
False
,
dictname
:
str
=
""
):
if
dictname
!=
""
:
dictname
=
" in "
+
dictname
dctcp
=
{}
for
key
in
dct
.
keys
():
akey
=
findDictStrKey
(
key
,
allowedKeys
)
if
(
akey
is
None
)
!=
complement
:
if
not
silent
:
warnings
.
warn
(
"Ignoring key {0}{2} with value {1}."
\
.
format
(
key
,
dct
[
key
],
dictname
),
stacklevel
=
2
)
else
:
if
akey
is
None
:
akey
=
key
dctcp
[
akey
]
=
dct
[
key
]
return
dctcp
Event Timeline
Log In to Comment