Holic한 꿀팁/Python

Python 문자열 표기에 대해서

달콤한방랑 2019. 12. 13. 18:17
728x90
반응형


 

Python에서 문자열은 다음과 같이 문자열을 표기할 수 있다.

 

・기본적인 문자열 표기 방법

hello          single-quotation (작은 따옴표)

                    주로 식별자 등을 표기할 때 사용하며, 단어와 같은 간단한 표기를 할 경우 사용한다.

hello  ⇒     double-quotation (큰 따옴표)

                    문자열등을 표기할 때에 사용하며 복수의 단어나 문장을 표기할 경우 사용한다.

 

이리저리 찾아보니, 식별자와 같은 것에는 작은 따음표를 사용하며

문자열, 정규표현의 raw문자열과 같은 것에는 큰 따옴표를 사용한다고 한다.

사실 이게 은근히 헷갈리는 부분이라,

아직도 초보인 나에게있어서는 응??????? 하고 고개를 갸우뚱하고 마는 부분이기도 하다.

크게 다른 차이점은 없다고 하지만,

일반적으로는 저런 식으로 표현된다고 하니 참고해도 좋을 것 같다.

 

엔터키 즉 줄바꾸기*(改行)를하고 싶은 경우

print를 이용해서 문장을 쓸 경우, 줄 바꾸기(改行)를 하고 싶을 때는 다음과 같은 방법들이 있다.

 

①작은 따옴표와, 큰 따옴표를 세개씩 표기하는 것으로 문자열을 지정하는 것으로 가능

줄 바꿔야만 하는 문장을 사용하는 경우에 유용하게 사용할 수 있다.

<작은 따옴표>

print (''' hello 
i am korean''')

예) 작은 따옴표를 3개 표기 '''

$python main.py 
 hello 
i am korean

 

<큰 따옴표>

print (""" hello 
i am korean """)

예) 큰 따옴표를 3개 표기 """  = 작은 따옴표의 경우와 출력 결과가 같다

$python main.py 
 hello  
i am korean

<응용>

print(“””

To do list

 - clean a room

 - make dinner

“””)

예) 출력 결과 상, 코드에서 줄 바꾸기를 한 그대로 나오는 것을 알 수 있다.

$python main.py


To do list

 - clean a room

 - make dinner

 

②「\n」을 넣는다.

print(‘My favorite color is \n pink.’)

예) pink라는 단어 앞에 \n를 넣었을 때

$python main.py
My favorite color is 
 pink.

 

단, 다음과 같은 경우에는 에러가 발생할 수 있다. 

・따옴표를 3개 연속으로 사용하지 않았을 경우

<작은 따옴표의 경우>

print(‘doesn‘t’)

<큰 따옴표의 경우>

print("doesn"t")


 코드 속에서 따옴표를 3개 이상 연속해서 쓴 것이 아니라, 각각 쓰여서? 인지
SyntaxError가 발생했다.

예) SyntaxError의 저주..😱😱😱😱

<작은 따옴표의 경우>

$python main.py 
  File "main.py", line 3 
    print('doesn't') 
                 ^ 
SyntaxError: invalid syntax

<큰 따옴표의 경우>

$python main.py 
  File "main.py", line 3 
    print("doesn"t") 
                 ^ 
SyntaxError: invalid syntax

 

<해결 방법>

print(“doesn’t”)

큰 따옴표를 「””」를 넣은 뒤 작은 따옴표로 문장을 표기할 경우에는 오류가 발생하지 않는다.

예) 

$python main.py
doesn't

 

\n가 문장 속에 있어서 줄 바꾸기가 되어 버릴 경우

에러 예 ①

print(‘doesn\ ‘t’)

에러 예 ②

 prnit(“C:\root\name”) 

 

예) 「\n」가 줄 바꾸는 코드로써 적용되어버림...😫😫

에러 예 ①

$python main.py 
  File "main.py", line 4 
    print('doesn\ 't') 
    ^ 
IndentationError: unexpected indent

에러 예 ②

$python main.py 
  File "main.py", line 3 
    print("C:\root\name")  
    ^ 
IndentationError: unexpected indent 

 

<해결 방법>

 print(“C:\\rootl\\name”)

\」를 2개 이상 넣는 것으로 해결이 가능하다.

$python main.py
C:\rootl\name

 

그 외에 문자열을 표기하는 방법에는 다음과 같은 방법들이 있다.

참고로 같이 올려 본다 😬

 

・줄 바꾸기를 하지 않고, 문자열을 표기하고 싶은 경우, =end"를 사용

print(“hello, ”, end=“”)          

print(“python”)

=end"를 사용하면, 복수의 문자열을 출력할 시에 줄을 바꾸 않고 나타낼 수 있으며,

 문자열 간의 공백을 지울 수 있다고 한다.

그러나 Python2에서는 에러가 나는 구문🤦‍♀️이므로 본 블로그의  Python 트슛을 참고하길 바란다.

예) 에러가 날 경우

$python main.py
  File "main.py", line 4
SyntaxError: Non-ASCII character '\xe3' in file main.py on line 4, but no encoding declared; 

 

※ 해결 방법

 

Python print(end = “” ) error가 일어날 경우

python2.7에서 공부했던 것들을 복습하기 위해 print로 이것 저것 시험해보던 중에 다음과 같은 Syntax Error가 발생했다. vi hi.py # coding: utf-8 print("hello, world") print("hello, ", end="") print("worl..

40holic.tistory.com

 

조금 응용해서, 「+」나「*」와 같은 표기로 문자열을 더하거나, 곱하는 것이 가능하다. 

 

・문자열을 더해서 하나로 표기하고 싶을 경우

print(‘Py’ + ‘thon’)

예)

$python main.py
Python

 

・일정의 문자를 반복해서 표기하고 싶을 경우

print( ‘Wh’ + 4 * ‘y’ )

예) 무진장 Whyyyy를 외치고 싶을 때 쓰고 싶은 출력 결과

$python main.py
Whyyyy

 

휴.. 여기까지 열심히 정리한 듯.

다음에는 수치 표기에 대해서 공부한 내용을 정리해 보고자 한다.

파이썬아.. 기다료라..ㅠ.ㅠ 하... 

 


참고사이트 (일본어 사이트) 

 

Pythonのprintのendのよくある3つの使い方 | HEADBOOST

 

www.headboost.jp

 

반응형