Strings
문자열은 Python에서 이름과 같은 텍스트 정보를 기록하는 데 사용됩니다. Python의 문자열은 실제로 시퀀스입니다. 즉, 기본적으로 Python은 문자열의 모든 요소를 시퀀스로 추적합니다. 예를 들어 Python은 문자열 "hello'를 특정 순서의 문자 시퀀스로 이해합니다. 즉, 인덱싱을 사용하여 특정 문자(예: 첫 번째 문자 또는 마지막 문자)를 가져올 수 있습니다.
In this lecture we'll learn about the following:
1.) Creating Strings
2.) Printing Strings
3.) String Indexing and Slicing
4.) String Properties
5.) String Methods
6.) Print Formatting
Creating a String
Python에서 문자열을 만들려면 작은따옴표나 큰따옴표를 사용해야 합니다.
# Single word
'hello'
'hello'
# Entire phrase
'This is also a string'
'This is also a string'
# We can also use double quote
"String built with double quotes"
'String built with double quotes'
# Be careful with quotes!
' I'm using single quotes, but this will create an error'
File "<ipython-input-4-da9a34b3dc31>", line 2
' I'm using single quotes, but this will create an error'
^
SyntaxError: invalid syntax
Printing a String
출력에 문자열을 표시하는 올바른 방법은 print() 기능을 사용하는 것입니다.
print('Hello World 1')
print('Hello World 2')
print('Use \n to print a new line')
print('\n')
print('See what I mean?')
Hello World 1
Hello World 2
Use
to print a new line
See what I mean?
String Basics
len()이라는 함수를 사용하여 문자열의 길이를 확인할 수도 있습니다!
Python의 내장 len() 함수는 공백과 구두점을 포함하여 문자열의 모든 문자를 계산합니다.
len('Hello World')
11
String Indexing
우리는 문자열이 시퀀스라는 것을 알고 있습니다. 즉, 파이썬은 인덱스를 사용하여 시퀀스의 일부를 호출할 수 있습니다. 이것이 어떻게 작동하는지 알아봅시다.
파이썬에서는 개체 뒤에 대괄호 []를 사용하여 인덱스를 호출합니다. 또한 Python의 경우 인덱싱이 0부터 시작한다는 점에 유의해야 합니다. s라는 새 개체를 만든 다음 인덱싱의 몇 가지 예를 살펴보겠습니다.
# Assign s as a string
s = 'Hello World'
# Print the object
print(s)
Hello World
# Show first element (in this case a letter)
s[0]
'H'
# Grab everything past the first term all the way to the length of s which is len(s)
s[1:]
'ello World'
# Note that there is no change to the original s
s
'Hello World'
# Grab everything UP TO the 3rd index
s[:3]
'Hel'
여기서 우리는 Python에게 0에서 3까지 모든 것을 가져오도록 지시하고 있습니다.
"세 번째 인덱스는 포함하지 않습니다. "
#Everything
s[:]
'Hello World'
음의 인덱싱을 사용하여 뒤로 이동할 수도 있습니다.
# Last letter (one index behind 0 so it loops back around)
s[-1]
'd'
# Grab everything but the last letter
s[:-1]
'Hello Worl'
또한 인덱스 및 슬라이스 표기법을 사용하여 지정된 단계 크기(기본값은 1)로 시퀀스의 요소를 가져올 수 있습니다. 예를 들어 한 행에 두 개의 콜론을 사용한 다음 요소를 잡기 위한 빈도를 지정하는 숫자를 사용할 수 있습니다.
# Grab everything, but go in steps size of 1
s[::1]
'Hello World'
# Grab everything, but go in step sizes of 2
s[::2]
'HloWrd'
String Properties
s
'Hello World'
# Let's try to change the first letter to 'x'
s[0] = 'x'
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-26-976942677f11> in <module>()
1 # Let's try to change the first letter to 'x'
----> 2 s[0] = 'x'
TypeError: 'str' object does not support item assignment
Notice how the error tells us directly what we can't do, change the item assignment!
Something we can do is concatenate strings!
# We can reassign s completely though!
s = s + ' concatenate me!'
print(s)
Hello World concatenate me!
곱셈 기호를 사용하여 반복을 만들 수 있습니다!
letter = 'z'
letter*10
'zzzzzzzzzz'
Basic Built-in String methods
Python의 객체에는 일반적으로 내장 메서드가 있습니다. 이러한 메서드는 개체 자체에 작업이나 명령을 수행할 수 있는 개체 내부의 함수입니다
.upper() : 대문자로 변환
.lower() : 소문자로 변환
.split() : 뭔하는 문자 또는 공백으로 문자열을 하나의 객체 단위로 나눔//공백으로 문자열 분할(기본값)
s='Hello World concatenate me!'
# Upper Case a string
s.upper()
'HELLO WORLD CONCATENATE ME!'
# Lower case
s.lower()
'hello world concatenate me!'
# Split a string by blank space (this is the default)
s.split()
['Hello', 'World', 'concatenate', 'me!']
# Split by a specific element (doesn't include the element that was split on)
s.split('W')
['Hello ', 'orld concatenate me!']
Print Formatting
.format() 메서드를 사용하여 인쇄된 문자열 문에 형식이 지정된 개체를 추가할 수 있습니다.
'Insert another string with curly brackets: {}'.format('The inserted string')
'Insert another string with curly brackets: The inserted string'
'Python' 카테고리의 다른 글
Python Loops (0) | 2023.01.20 |
---|---|
Python Conditional Satement (0) | 2023.01.20 |
Python Tuple (0) | 2023.01.19 |
Python List (0) | 2023.01.19 |
Pyton 객체와 데이터 구조 기초 (0) | 2023.01.18 |