2017-12-25 16 views

답변

1

당신이 작동하지 않았다 어떤 이유는 (필자는 예를 들어, 그 자체로 문서를 확인하십시오.로 지나치게 자세한 변수 이름을 사용) 할 수있다 ' t 변경 (예 : 'a'= 1은 같은 이유로 실패합니다.) 대화 형 작업 및 기호와 이름이 같은 변수를하려는 경우

당신은 내가 "sympy 수입 *에서"사용하는 경우

>>> var(','.join(variables)) # variables = ['x', 'y', 'z'] 
(x, y, z) 
3

몇 가지 문제 :

  1. 입력 문자열이 sympy.symbols의 호출에 의해 변이되지 않습니다.
  2. var의 모든 요소를 ​​인수로 사용하여 symbols을 호출해야하며 문자열 인수 'i'을 사용하여 호출을 하드 코드했습니다.
  3. 다음 반복에서는 i이라는 이름이 다음 요소 인 var (재사용조차 사용하지 않음)에 재 할당되기 때문에 루프 본문 내에 i에 할당하는 것은 무의미합니다.

요약하면 var의 모든 요소를 ​​사용하여 symbols을 호출하고 반환 값을 어딘가에 저장해야합니다. 당신이 문자열로 기호를 할당하려고하기 때문에

>>> import sympy 
>>> var_as_strings = ['x', 'y', 'z'] 
>>> var_as_symbol_objects = [sympy.symbols(v) for v in var_as_strings] 
>>> var_as_symbol_objects 
[x, y, z] 
>>> type(var_as_symbol_objects[0]) 
<class 'sympy.core.symbol.Symbol'> 

+0

를 작성하고 "귀하에게 (V)"보다는 "sympy를 작성할 수 있습니다. 기호 (v) ", 그것은 또한 작동해야합니다. 좋아요? @timgeb – Push

+0

@ PushanSharma 예 – timgeb