-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
해결됨
가변인자 튜플 출력
19.05.28 21:25 작성 조회수 133
0
5강 function arguments의 14분 41초에서요.
print(args) 를 하면 (3,4,5)이어서요.
x, y, z = args 는
x, y, z = (3,4,5)라고 생각했어요.
args에는 (3,4,5)라는 데이터가 있으니까요.
그래서 print(x)를 하면 당연히 튜플 안에 있는 거니까
(3) 이렇게 나올 줄 알았는데
왜 그냥 3이 나오나요?
----------------------------------------------
print(x)가 그냥 3이 나와서 특이해서요.
(3) 이 나오게 하고 싶었어요.
그래서 아래 모듈(?)을 만들어봤는데요.
def asterisk_test_2(*args):
print(args)
x, y, z = args
print(x)
return x, y, z
print(asterisk_test_2( (3),(4),(5) ))
이렇게 했는데요.
결과는 아래와 같더라고요.
(3, 4, 5)
3
(3, 4, 5)
print(x)가 그냥 3이어도
print(args)는 ( (3), (4), (5) )
일 줄 알았는데 (3,4,5) 가 나왔는데요.
원래 튜플 안에서 튜플이 있으면 안 되는 건가요?
왜 print(args)는 ( (3), (4), (5) )가 안 나오고
(3,4,5)가 나온 건가요?
알려주시면 정말 감사하겠습니다^^
답변을 작성해보세요.
1
TeamLab
지식공유자2019.06.02
args는 튜플이지만 안에 있는 값들은 int 입니다. 그러므로 x는 3이 맞습니다.
만약 (3)이 나오고 싶다면 즉 각 값들이 튜플이 되고 싶다면 넘겨줄때 `((3,), (4,), (5,))` 형태로입력을 해주셔야 할거 같습니다.
답변 1