@@ -274,10 +274,10 @@ def substitute_input_symbols(exprs, params):
274274 if lambda_value is not None :
275275 lambda_value ["aliases" ].append ("lambda" )
276276 input_symbols .update ({"lamda" : lambda_value })
277- as_value = input_symbols .pop ("as" , { "latex" : r"as" , "aliases" : [ "as" ]} )
277+ as_value = input_symbols .pop ("as" , None )
278278 if as_value is not None :
279279 as_value ["aliases" ].append ("as" )
280- input_symbols .update ({"a s" : as_value })
280+ input_symbols .update ({"a* s" : as_value })
281281 params .update ({"symbols" : input_symbols })
282282
283283 for (code , symbol_data ) in input_symbols .items ():
@@ -618,7 +618,7 @@ def parse_expression(expr, parsing_params):
618618 unsplittable_symbols = parsing_params .get ("unsplittable_symbols" , ())
619619 symbol_dict = parsing_params .get ("symbol_dict" , {})
620620 separate_unsplittable_symbols = [(x , " " + x + " " ) for x in unsplittable_symbols ]
621- # new approach
621+
622622 substitutions = separate_unsplittable_symbols
623623 if parsing_params .get ("elementary_functions" , False ) is True :
624624 alias_substitutions = []
@@ -629,6 +629,8 @@ def parse_expression(expr, parsing_params):
629629 if alias in expr :
630630 alias_substitutions += [(alias , " " + name )]
631631 substitutions += alias_substitutions
632+ # Special substitution to avoid 'as' being a reserved keyword in python
633+ substitutions += [("as" , "a*s" )]
632634 substitutions .sort (key = lambda x : - len (x [0 ]))
633635 expr = substitute (expr , substitutions )
634636 can_split = lambda x : False if x in unsplittable_symbols else _token_splittable (x )
0 commit comments