- asp ftp
- javascript redirection
- swagger 500 error
- 원격ftp
- asp.net core Select
- Mac Oracle
- 하드 마이그레이션
- 말줄임표시
- javascript 바코드 생성
- SSD 복사
- django 엑셀불러오기
- 바코드 생성하기
- asp.net dropdownlist
- asp.net Select
- 타임피커
- 404에러페이지
- php 캐쉬제거
- asp.net core swagger
- ViewData
- ViewBag
- 강제이동
- jquery 바코드생성
- TempData
- simpe ftp
- ASP.Net Core 404
- 하드 윈도우 복사
- XSS PHP
- XSS방어
- 맥 오라클설치
- 바코드 스캔하기
웹개발자의 기지개
[Python] 함수 가변인자 공부하기 - *args, **kargs 본문
함수 튜플/딕셔너리 언패킹
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
def concatenate_strings(*args):
return ''.join(args)
# 메인 실행 부분
def main():
n = int(input("몇 개의 문자열을 입력하시겠습니까? "))
strings = []
for i in range(n):
s = input(f"{i + 1}번째 문자열을 입력하세요: ")
strings.append(s)
result = concatenate_strings(*strings)
print("합쳐진 문자열:", result)
# 함수 실행
main()
|
cs |
실행결과
------
몇 개의 문자열을 입력하시겠습니까? 3
1번째 문자열을 입력하세요: 안녕
2번째 문자열을 입력하세요: 하세요
3번째 문자열을 입력하세요: 파이썬
합쳐진 문자열: 안녕하세요파이썬
------
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
def concatenate_strings(*args):
result = ''
for string in args:
result += string
return result
string_list = []
num = int(input("몇 개의 문자열을 받을까요? 문자열 개수를 입력해주세요: "))
for i in range(num):
s = input(f"{i + 1}번째 문자열을 입력해주세요: ")
string_list.append(s)
print("\n입력한 문자열 목록:", string_list)
print("-" * 30)
print("합쳐진 문자열:", concatenate_strings(*string_list))
|
cs |
실행결과
---------
몇 개의 문자열을 받을까요? 문자열 개수를 입력해주세요: 3
1번째 문자열을 입력해주세요: 안녕
2번째 문자열을 입력해주세요: 하세요
3번째 문자열을 입력해주세요: 파이썬
입력한 문자열 목록: ['안녕', '하세요', '파이썬']
------------------------------
합쳐진 문자열: 안녕하세요파이썬
---------
string_list = ["안녕", "하세요", "파이썬"] # 리스트다
concatenate_strings(*string_list)
내부적으로 string_list은 튜플처리된다.
내부적으로 args = ("안녕", "하세요", "파이썬") 처리된다.
concatenate_strings("안녕", "하세요", "파이썬")
직접 args = ("안녕", "하세요", "파이썬") 되어서 정상 입력된다.
concatenate_strings("a", "b") -> args = ("a", "b")
concatenate_strings(*["a", "b"]) -> args = ("a", "b") (리스트 언패킹됨)
concatenate_strings(("a", "b")) -> args = (("a", "b"),) (튜플 한 개)
concatenate_strings(*("a", "b")) -> args = ("a", "b") (튜플 언패킹됨)
**kwargs란?
**kwargs는 **Keyword Arguments(키워드 인자)**를 받아서 처리하는 파이썬의 가변 인자 문법
즉, 인자를 key=value 형태로 여러 개 넘길 수 있다. 함수 안에서는 이것이 딕셔너리로 들어온다.
1
2
3
4
|
def show_info(**kwargs):
print(kwargs)
show_info(name="Alice", age=25, job="Developer")
|
cs |
실행결과
{'name': 'Alice', 'age': 25, 'job': 'Developer'}

**kargs 언패킹
1
2
3
4
5
6
7
8
9
10
11
|
def show_info(**kwargs):
for key, value in kwargs.items():
print(f"{key} : {value}")
info = {
"name": "Bob",
"age": 30,
"language": "Python"
}
show_info(**info) # 딕셔너리를 언패킹해서 넘김
|
cs |
실행결과
-------
name : Bob
age : 30
language : Python
-------

주의할점은 *args 가 **kargs 보다 먼저와야 한다.
'python' 카테고리의 다른 글
[Python] python 여러개 버전 확인 (Windows) (0) | 2025.01.20 |
---|---|
[AIOT] 라즈베리파이 보안시스템 구축 예제 (0) | 2024.06.21 |
[Colab] 구글 코랩에서 파이썬 버전 선택변경하기 (0) | 2024.06.05 |
[python] 파이썬 map 함수 정리 (0) | 2023.11.10 |
[Python] datetime 와 strftime()과 strptime() 비교 (0) | 2022.05.06 |