문자열 목록이 있습니다 (예 : var = ['x', 'y', 'z']
). 이 문자열을 sympy '기호'로 사용하고 싶습니다. 이 작업을 수행하려고합니다.어떻게 문자열 목록을 sympy 변수로 변환 할 수 있습니까?
for i in var:
i = symbols('i')
물론 작동하지 않습니다. 누군가 이걸로 나를 도울 수 있습니까?
문자열 목록이 있습니다 (예 : var = ['x', 'y', 'z']
). 이 문자열을 sympy '기호'로 사용하고 싶습니다. 이 작업을 수행하려고합니다.어떻게 문자열 목록을 sympy 변수로 변환 할 수 있습니까?
for i in var:
i = symbols('i')
물론 작동하지 않습니다. 누군가 이걸로 나를 도울 수 있습니까?
당신이 작동하지 않았다 어떤 이유는 (필자는 예를 들어, 그 자체로 문서를 확인하십시오.로 지나치게 자세한 변수 이름을 사용) 할 수있다 ' t 변경 (예 : 'a'= 1은 같은 이유로 실패합니다.) 대화 형 작업 및 기호와 이름이 같은 변수를하려는 경우
당신은 내가 "sympy 수입 *에서"사용하는 경우
>>> var(','.join(variables)) # variables = ['x', 'y', 'z']
(x, y, z)
몇 가지 문제 :
sympy.symbols
의 호출에 의해 변이되지 않습니다.var
의 모든 요소를 인수로 사용하여 symbols
을 호출해야하며 문자열 인수 'i'
을 사용하여 호출을 하드 코드했습니다.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'>
는
를 작성하고 "귀하에게 (V)"보다는 "sympy를 작성할 수 있습니다. 기호 (v) ", 그것은 또한 작동해야합니다. 좋아요? @timgeb – Push
@ PushanSharma 예 – timgeb