inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Khóa học Python miễn phí (phần cơ bản) - Chỉ sau 6 giờ, bạn cũng có thể trở thành nhà phát triển

Biến

큰 따옴표의 유무 차이

600

thoughtguy2318

1 câu hỏi đã được viết

0

print("우리집 " + animal + "의 이름은 " + name + "에요")

print(name + "는 " + str(age) + "살이며, " + hobby + "을 아주 좋아해요")

위 두문장에서 위의 문장은 맨앞에 "(큰따옴표)가 있고

아래문장에서는 없습니다. 하지만 아래문장도 출력되는데 문제가 없는 것같습니다. 그렇다면 큰따옴표의 유무에 대한차이와 큰따옴표의 역할에 대해 알려주시면 감사하겠습니다 ^,^

큰따옴표 python

Câu trả lời 2

1

ygh2582402

# 먼저 따옴표를 쓰는 이유는 print에서 문장을 출력할 내용을 따옴표 안에 쓰게 됩니다.

print("Hello") 하면 Hello 가 출력되는 것처럼 말이죠.

animal과 name은 변수이므로 일단 나중에 생각해보고,

print("우리집 강아지의 이름은 치치에요") 라고 한다면 ""내의 문장이 출력되겠죠.

------------------------------------------------------------------------------------------------

print("우리집 " + animal + "의 이름은 " + name + "에요")

--> 여기서 animal과 name은 변수이므로 따옴표를 쓰지 않습니다. 

하지만 우리집, 의 이름은, 에요 는 변수가 아닌 문자열이므로 따옴표를 써야 출력이 됩니다.

그 문자와 변수를 이어주는 것이 + 이구요.

즉 출력할 문자는 "" 를 붙히고, 변수에는 붙히지 않으며 출력할 문자와 변수를 이어주는 것은 + !

print(name + "는 " + str(age) + "살이며, " + hobby + "을 아주 좋아해요")

--> 여기서 name, age, hobby는 변수이므로 따옴표를 붙히지 않습니다.

하지만 는, 살이며, 을 아주 좋아해요는 문자열이므로 ""를 붙히는 겁니다.

0

devahn99

감사합니다. 이해가 잘 되네요.

0

soung2617232198

일단 name이랑 animal, age, hobby가 변수인 것 같고 해당 변수들이 print문 위쪽에 선언된 듯 싶네요.  만약 코드에 딱 저 두 문장밖에 없다면 출력되는데 문제가 생길거니까(직접 실행 돌려보고 얘기드림) 앞서 추측한 것처럼 이해해도 되겠지요?

큰 따옴표의 역할은  문자열을 나타낼 때 사용되요! 리터럴 개념을 아시나요? 리터럴은 문자 그대로의 값이에요. 예를 들면  age = 12  -> 이건 age 변수에 12를 넣는건데 여기서 12가 리터럴이 되요! age는 정수형 변수가 되겠네요.

마찬가지로  name = "조성우" 를 선언하면 "조성우" 가 문자열 리터럴이 되는거에요.

이제 큰따옴표의 역할은 아시겠죠? (문자열 리터럴 만들어주기)

참고로 파이썬에서는 작은따옴표도 큰따옴표랑 같은 역할을 해줘요!

이제 유무의 차이를 보죠.

만약 큰따옴표가 있다면 위에 언급한 것 처럼 "" 사이에 있는 모든 글자들을 문자열로 만들어 주겠지요.

근데 없다면? 오류가 뜰거에요! 

예를 들어 print("우리집 " + animal + "의 이름은 " + name + "에요") 를 아래처럼

print(우리집 + animal + 의 이름은 + name + 에요) 로 바꾸면 에러가 뜨지요.

왜냐하면 우리집 , 의 이름은 , 에요 같은 한글은 파이썬이든 자바든 어떤 명령어로도 설정 되어 있지 않기 때문에 이 글자들이 어떤 형태인지 반드시 표시를 해줘야 해요! 얘네는 당연히 문자열이니까 print 문 안에 있었던 것처럼 "" 사이에 존재하는게 맞겠죠!

print(name + "는 " + str(age) + "살이며, " + hobby + "을 아주 좋아해요")

그럼 이건 왜 오류가 안날까요?

만약 성우님이 name을 print 이전에 한번이라도 변수 선언 하지 않으셨다면 이 print문 또한 오류가 발생했을 거에요! 그렇지만 name = "조성우" 이런 형태로라도 선언 하셨기 때문에 name을 변수로  프로그램에서 인식하고 컴파일 실행이 된 것이에요!

참고로 변수는 데이터를 담을 수 있는 공간을 뜻해요.(변수는 값이 언제든지 변하게 할 수 있어요!)

이 정도면... 궁금증이 풀어지셨을 거라 믿고 싶어요..

안되셨다면 제가 질문 의도를 제대로 파악 못한 것이겠죠..?ㅠㅠ

quiz 8 오류 문제

0

69

1

str() 작성 위치

0

51

1

아나콘다

0

60

1

윈도우 설치 도와주세요

0

74

1

std_weight함수에서weight만return가능한가요?

0

67

1

오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.

0

34

1

설치해서 시작하는데 문제가 있습니다.

0

69

1

함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?

0

103

1

2장 환경설정 문의

0

73

1

스타크래프트 프로젝트

0

74

1

python 파일명.py 입력시 Python 출력

0

133

1

로드맵 질문있습니다!

0

85

2

오류

0

74

1

질문 있습니다.

0

73

1

블로그에 학습한 내용을 정리해도 괜찮을까요?

0

171

1

#퀴즈 3의 5번 질문

0

71

1

print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다

0

80

1

가변인자의 위치가 중요한가요?

0

79

1

vscode옛날 버전 설치

0

220

1

글자색상이 선생님처럼 안나옵니다

0

186

1

슬프네

0

155

1

quiz 6번 관련 문의입니다.

0

129

1

퀴즈#3에 대해서 이렇게 작성해도 되나요?

0

193

1

피드백 부탁드립니다

0

93

1