반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- CNN
- 가상환경구축
- python 문법
- Deep learning
- ubuntu
- AI
- __init__
- 가상환경
- 파이썬
- torch.nn
- torch.nn.Module
- objectdetection
- wsl2
- 머신러닝
- __call__
- Anaconda
- Torchvision
- docker
- pychram
- rnn
- vision transformer
- pytorch
- DeepLearning
- 딥러닝
- LSTM
- tensorflow
- ViT
- 파이썬문법
- pip install
- python
Archives
- Today
- Total
인공지능을 좋아하는 곧미남
[python] 동일한 함수에서 출력을 다르게 하고 싶을때 문자열로 출력 파라미터를 정하는 방법! 본문
code_study/python world
[python] 동일한 함수에서 출력을 다르게 하고 싶을때 문자열로 출력 파라미터를 정하는 방법!
곧미남 2024. 12. 2. 17:51오늘은 제목과 같이 동일한 함수에서 출력 파라미터를 다르게 하기 위한 방법을 소개하겠습니다. 여기서 활용하는 방법은 python 내장 함수인 locals()와 문자열을 활용한 방법입니다!
- 코드 내용 -
def forward(x, y, z, returns):
xy = x + y
xz = x + z
yz = y + z
xyz = xy + xz + yz
# variables 출력: {'x': 1, 'y': 2, 'z': 3, 'xy': 3, 'xz': 4, 'yz': 5, 'xyz': 12}
# locals()를 사용하면, {'변수명', 변수값}으로 함수안에 모든 변수들의 정보를 가지는 딕셔너리 변수를 얻을 수 있음.
variables = locals()
return tuple(variables[r] for r in returns)
if __name__ == "__main__":
result = forward(1, 2, 3, ("xy", "xyz"))
print(result)
위 코드에서 variables = locals()의 출력이 아래와 같이 해당 함수내에 속한 모든 변수들의 정보를 {'변수명': 변수값}의 key-value 형태인 딕셔너리로 출력되는 것을 볼 수 있습니다.
variables 출력: {'x': 1, 'y': 2, 'z': 3, 'xy': 3, 'xz': 4, 'yz': 5, 'xyz': 12}
그래서, 입력 파라미터를 tuple로 ("출력하고 싶은 변수명1", "출력하고 싶은 변수명2", ...) 이렇게 지정하고, tuple(variables[r] for r in returns) 이 값을 return 해버리면, 출력하고 싶은 변수명1, 2, 3 ... 순서대로 문자열이 dict에 매칭되어 value를 출력하게 됩니다.
반응형
'code_study > python world' 카테고리의 다른 글
[python] re.compile 문자열 정규화로 파일 path 정렬하기 (0) | 2024.12.03 |
---|---|
[python] argparse Error: SystemExit: 2 (0) | 2024.12.02 |
[python] functools.partial() (0) | 2022.03.07 |
[python] OrderedDict는 딥러닝에서 어떻게 사용될까? (0) | 2022.02.08 |
[python] Packing, Unpacking (0) | 2022.01.17 |
Comments