스택큐힙리스트

파이썬 함수 내 매개변수 이름 목록 가져오기 [중복] 본문

카테고리 없음

파이썬 함수 내 매개변수 이름 목록 가져오기 [중복]

스택큐힙리스트 2023. 4. 18. 11:27
반응형

이 질문에는 이미 답변이 있습니다:

How to get method parameter names?

1. 안녕하세요.

2. 감사합니다.

3. 죄송합니다.

4. 예.

5. 아니오.

6. 네.

7. 아니요.

8. 이해했습니다.

9. 안 돼요.

10. 괜찮아요.

11. 미안해요.

12. 사랑해요.

13. 기다려주세요.

14. 잘 모르겠어요.

15. 잘 지낼게요.

16. 다시 말해주세요.

17. 조금 더 자세히 설명해주세요.

18. 제발.

19. 제발 좀 더 조용히 해주세요.

20. 정말 감사합니다.

2개월 전에 마감했습니다.

파이썬 함수 내부에 쉽게 들어가서 매개변수 이름 목록을 가져올 수 있는 방법이 있나요?

예를 들어:

def func(a,b,c):

print magic_that_does_what_I_want()

>>> func()

['a','b','c']

감사합니다 (gamsahamnida)

답변 1

우리는 실제로 여기서 inspect이 필요하지 않아요.

>>> func = lambda x, y: (x, y)

>>>

>>> func.__code__.co_argcount

2

>>> func.__code__.co_varnames

('x', 'y')

>>>

>>> def func2(x,y=3):

... print(func2.__code__.co_varnames)

... pass # Other things

...

>>> func2(3,3)

('x', 'y')

>>>

>>> func2.__defaults__

(3,)

파이썬 2.5 이전 버전에서는 __code__ 대신에 func_code을 사용하고, __defaults__ 대신에 func_defaults을 사용하십시오.

답변 2

제목: 파이썬 함수 내 매개변수 이름 목록 가져오기 [중복된 질문]

파이썬은 강력한 프로그래밍 언어 중 하나입니다. 그러나 많은 초기 학습자들은 함수에 대한 작업을 수행하는 데 매개변수 이름을 언급할 필요가 있는 경우에 혼란스러워합니다. 이 경우 파이썬에서 함수 내 매개변수 이름 목록을 가져오는 방법이 필요합니다.

파이썬에서 내장 함수 vars()를 사용하여 함수 객체의 __code__ 속성을 가져올 수 있습니다. 이 속성은 코드 객체를 반환하며, 코드 객체는 co_varnames 속성을 포함합니다. 이 속성은 함수의 모든 지역 변수와 매개변수 이름을 저장합니다. 따라서 이 방법을 사용하여 함수 내부의 매개변수 이름을 추출할 수 있습니다.

아래는 예제 코드입니다:

```python

def my_func(param1, param2, *args, **kwargs):

pass

param_names = list(my_func.__code__.co_varnames[:my_func.__code__.co_argcount])

print(param_names)

```

이 예제 코드는 함수 my_func의 매개변수 이름 목록을 가져옵니다. 매개변수 이름은 코드 객체의 co_varnames 속성에서 가져오기 때문에 매우 간단합니다.

따라서 파이썬에서 함수 내 매개변수 이름 목록을 가져오는 작업은 내장 함수 vars()와 코드 객체의 co_varnames 속성을 이용하여 손쉽게 수행할 수 있습니다. 이 방법을 사용하면 오류 없이 함수 내부의 매개변수 이름들을 리스트로 가져올 수 있습니다.

반응형
Comments