add search for keys option
This commit is contained in:
40
materials.py
40
materials.py
@@ -124,18 +124,20 @@ def main():
|
|||||||
description='List materials.',
|
description='List materials.',
|
||||||
help='list all available materials')
|
help='list all available materials')
|
||||||
|
|
||||||
# material
|
# get material
|
||||||
parser_material = subparsers.add_parser('get',
|
parser_get = subparsers.add_parser('get',
|
||||||
description='Get material information.',
|
description='Get material information.',
|
||||||
help='get material information')
|
help='get material information')
|
||||||
parser_material.add_argument('materialname', action='store',
|
parser_get.add_argument('materialname', action='store',
|
||||||
help='list available material information')
|
help='list available material information')
|
||||||
parser_material.add_argument('-r', '--rho', dest='const_collection',
|
parser_get.add_argument('-r', '--rho', dest='const_collection',
|
||||||
action='append_const', const="rho",
|
action='append_const', const="rho",
|
||||||
help='get density from material')
|
help='get density from material')
|
||||||
parser_material.add_argument('-T', '--Tm', dest='const_collection',
|
parser_get.add_argument('-T', '--Tm', dest='const_collection',
|
||||||
action='append_const', const="T_m",
|
action='append_const', const="T_m",
|
||||||
help='get melting point temperature')
|
help='get melting point temperature')
|
||||||
|
parser_get.add_argument('--search', action='store',
|
||||||
|
help='search for material information, comma delimited keys')
|
||||||
|
|
||||||
args = parser.parse_args()
|
args = parser.parse_args()
|
||||||
|
|
||||||
@@ -148,13 +150,21 @@ def main():
|
|||||||
|
|
||||||
elif args.command == 'get':
|
elif args.command == 'get':
|
||||||
filename = path.join('data', args.materialname + '.json')
|
filename = path.join('data', args.materialname + '.json')
|
||||||
|
data = read_file(filename)
|
||||||
if args.debug:
|
if args.debug:
|
||||||
print("filename: " + filename)
|
print("filename: " + filename)
|
||||||
if args.const_collection:
|
if args.const_collection:
|
||||||
data = read_file(filename)
|
if "rho" in args.const_collection:
|
||||||
search_keys(data, keys=args.const_collection)
|
args.const_collection.append("rho(T)")
|
||||||
|
if args.debug:
|
||||||
|
print(args)
|
||||||
|
#search_keys(data, keys=args.const_collection)
|
||||||
|
elif args.search:
|
||||||
|
search_list = [element for element in args.search.split(',')]
|
||||||
|
if args.debug:
|
||||||
|
print("search_list: " + str(search_list))
|
||||||
|
search_keys(data, keys=search_list)
|
||||||
else:
|
else:
|
||||||
data = read_file(filename)
|
|
||||||
print_data(data)
|
print_data(data)
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
|||||||
Reference in New Issue
Block a user