Working with Text
String
- character의 연속적인 배열
- String은 하나의 data type (str)
- 문자열이 python에선 string으로 표현
- '' 혹은 "" 으로 내용 앞뒤를 감싸서 표현
- '', ""는 길이가 0인 가장 짧은 empty string
- immutable: String의 특정 index 부분만 수정 불가능
Operation
- len(str): string인 str의 길이 반환
- +: 두 개의 string을 더해 줌
- +연산자 앞뒤로는 같은 data type이 와야 함
- string + string만 가능
- *: string을 반복
- string * repeat number 형식으로 문자 * 숫자로 표현
- string의 내용이 숫자인 경우 Typecast
- int(): string의 내용이 숫자인 경우 정수형으로 타입 전환
- float(): string의 내용이 숫자인 경우 실수형으로 타입 전환
print(len("Albert")
print(len("Einstein")
a = "Albert" + "Einstein"
print (a)
b = "Albert" * 3
print(b)
c = "12345"
print(c)
print(int(c))
print(float(c))
6
8
AlbertEinstein
AlbertAlbertAlbert
"12345"
12345
12345.0
Escape Sequence
- \': '
- \": "
- \\: \
- \t: tab
- \n: 줄바꿈
- \r: 현재 위치 나타내는 커서를 맨 앞으로 이동
Slicing Strings
Index
- string은 character의 배열로 글자마자 Index를 가짐
- Index는 0부터 string의 length-1 까지 존재
- a = "You only live once."
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
---|
Y | o | u | | o | n | l | y | | l | i | v | e | | o | n | c | e | . |
- a[x : y]: a의 index가 x부터 y 전까지
- a[x : ]: a의 index가 x부터 끝까지
- a[ : y]: a의 index가 처음부터 y 전까지
- ex) a[:12] = "You only liv"
- Index가 음수일 때는 뒤에서 거꾸로 시작
- -1부터 -length까지 존재
-19 | -18 | -17 | -16 | -15 | -14 | -13 | -12 | -11 | -10 | -9 | -8 | -7 | -6 | -5 | -4 | -3 | -2 | -1 |
---|
Y | o | u | | o | n | l | y | | l | i | v | e | | o | n | c | e | . |
- a[x : y]: a의 index가 x부터 y 전까지
- 순방향일 때만 값을 가짐
- 역방향일 경우 empty string
- ex) a[12:-2] = "e onc"
- ex) a[12:-13] = empty string
- a[x : y : z]: a의 index가 x부터 y 전까지 z값의 step
- step 값이 양수: 순방향
- step 값이 음수: 역방향
- ex) a[0:12:2] = "Yuo i"
- ex) a[::-1] = ".ecno evil ylno uoY"
print()
- 출력 함수
- 문장 마지막에 줄바꿈을 하도록 설정돼 있음
- print(a, b, c, ...) 쉼표를 사용해서 여러 개를 한꺼번에 출력 가능
- 여러 개를 출력할 경우 기본적으로 한 칸 띄워서 출력
- sep=: seperator 변경 가능
- end=: end option 변경 가능
print('a', 'b', 'c')
print('a', 'b', 'c', sep = "-")
print('a', 'b', 'c', end = "print end")
print('a', 'b', 'c', sep = "-", end = "print end")
a b c
a-b-c
a b cprint end
a-b-cprint end
- 입력 함수
- 변수 = input(): input 값을 변수에 저장
- input("explain"): 입력값에 대한 설명을 지정할 수 있음
- int(input()): 입력값을 int형으로 받음
- float(input()): 입력값을 float형으로 받음