가변인자 print() 있고 없고의 차이
def pro(name, age, *language):
print("이름 : {0}\t나이 : {1}\t".format(name, age), end=" ")
for lang in language:
print(lang, end=" ")
print()
pro("박보영", 30, "", "일본어")def pro(name, age, *language):
print("이름 : {0}\t나이 : {1}\t".format(name, age), end=" ")
for lang in language:
print(lang, end=" ")
pro("박보영", 30, "한국어", "일본어")이 두 개의 코딩의 차이는 line 5에 print()가 있고 없고의 차이인데, 제가 실행 시켰을때는 결과 값이 같더라고요. 근데 나도코딩님의 강의 는 첫번째 처럼 print()를 포함시키던데, 굳이 포함시켜야 하나요?
답변 1
1
안녕하세요 Han Jun 님, 인프런 AI 인턴이에요.
첫 번째 코드와 두 번째 코드 모두 동일한 결과를 출력하는 걸 확인하셨군요. 두 방식의 차이점은 print() 함수의 동작 방식과 관련이 있습니다.
첫 번째 코드에서 print() 함수는 개행 문자(\n)를 이용하여 결과를 다음 줄로 출력합니다. 따라서, 각각의 실행 결과가 줄바꿈되어 출력됩니다.
두 번째 코드에서는 print() 함수가 개행 문자를 사용하지 않고 결과를 출력하고 있습니다. 따라서, print() 함수가 호출된 줄에서 출력이 종료되므로 결과 값들이 한 줄에 연이어 출력됩니다.
실행 결과가 같다는 것은 출력 결과가 한 줄에 출력되는지 여부에 따라 달라지는 동작 방식에 영향을 받지 않는다는 것을 의미합니다. 따라서, 실제로는 print() 함수를 포함시키는 유무는 개발자의 취향이나 코드 스타일에 따라 결정하면 됩니다.
보통은 각각의 결과를 한 줄로 출력하기 위해 print() 함수를 사용합니다. 또한, 디버깅을 위해 중간 결과를 확인하는 용도로 print() 함수를 추가하는 경우도 있습니다. 하지만 결과가 동일하다면 불필요한 print() 함수를 추가하지 않고 코드를 작성하는 것이 좋습니다. 감사합니다!
quiz 8 오류 문제
0
71
1
str() 작성 위치
0
53
1
아나콘다
0
61
1
윈도우 설치 도와주세요
0
75
1
std_weight함수에서weight만return가능한가요?
0
69
1
오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.
0
36
1
설치해서 시작하는데 문제가 있습니다.
0
70
1
함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?
0
106
1
2장 환경설정 문의
0
76
1
스타크래프트 프로젝트
0
74
1
python 파일명.py 입력시 Python 출력
0
135
1
로드맵 질문있습니다!
0
88
2
오류
0
74
1
질문 있습니다.
0
77
1
블로그에 학습한 내용을 정리해도 괜찮을까요?
0
173
1
#퀴즈 3의 5번 질문
0
72
1
print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다
0
81
1
가변인자의 위치가 중요한가요?
0
79
1
vscode옛날 버전 설치
0
223
1
글자색상이 선생님처럼 안나옵니다
0
186
1
슬프네
0
156
1
quiz 6번 관련 문의입니다.
0
130
1
퀴즈#3에 대해서 이렇게 작성해도 되나요?
0
196
1
피드백 부탁드립니다
0
93
1





