국내에서 가장 많이 사용하는 언어가 Java이다보니 자바를 예로 들면,
자바는 하나의 문자열 안에 여러타입을 사용해서 작성하는것을 간단하게 할 수 있다.
public static void main(String[] args) {
int num = 5;
System.out.println("1 + 2 + 3 " + num + " 4");
}
// 1 + 2 + 3 5 4
하지만 파이썬으로 위의 케이스를 작성하면 에러가 나는것을 볼 수 있다.
num = 5
print("1 + 2 + 3 " + num + " 4")
TypeError: cannot concatenate 'str' and 'int' objects on line 2 in main.py
파이썬에서 문자열과 정수는 다른 데이터 형식이므로 직접적으로 연결할 수 없다.
이를 해결하기위해선 데이터 타입을 맞춰줘야한다.
여기선 String으로 변환하여 진행해보자
n = 5
s = str(n)
print (s + "ABC")
print (type(s + "ABC"))
# 5ABC
# <class 'str'>
'를 문자열안에 사용하는 법 )
그러면 이런 문구를 그대로 print()하면 어떻게 될까?
print('I can't do it')
# SyntaxError: bad input on line 1 in main.py
에러가 발생하는것을 볼 수 있다. ' 자체가 하나의 String을 출력하는 것이기때문에 ' 를 작성하는 것만으로 이미 다른 String 문자열을 사용하겠다는 의미로 전해진 것이기 때문이다. 그렇다면 어떻게 해결할 수 있을까?
1) ""와 병행하여 사용한다.
print("I can't do it")
2) ''와 \를 사용한다.
print('say "I can\'t do it"')
3) 왠지 고인물처럼 보일 수 있게 아래처럼 해볼 수 도 있다.
print("say \"I can't do it\"")
개행문자의 사용)
의외로 생각보다 개행문자(줄바꿈 등을 위해 사용되는 문자)를 사용하는 경우가 많다.
\n, \t 와같은 커멘드를 통해 줄바꿈을하거나, 띄어쓰기를 할 수 있다.
print('I \t love your \n name')
/*
I love your
name
*/
만약 사용자가 원하는 값이 \name 그 자체라면 "" 앞에 r을 붙이면된다.
print(r'I love your \name')
#I love your \name
'Python' 카테고리의 다른 글
[Python] 파이썬 - 11. 리스트(List) (0) | 2023.09.23 |
---|---|
[Python] 파이썬 - 10. format과 f-string의 활용 (0) | 2023.06.24 |
[Python] 파이썬 - 08. *args, **kwargs (0) | 2023.05.07 |
[Python] 파이썬 - 07. 올림(ceil), 내림(floor), 반올림(round) (0) | 2023.03.25 |
[Python] 파이썬 - 06. 대입연산, 얕은 복사, 깊은 복사 (0) | 2023.03.11 |