Python/공부내용

Python 공부내용 21.09.15 Python - Strings

HappyFrog 2021. 9. 15. 19:26

W3Schools의 Python Tutorial을 보며 해석하고 정리한 글입니다.

오역이 존재할 수 있습니다

저도 파이썬은 처음이니 가볍게 봐주세요 :D 

W3Schools


파이썬 문자열(Python Strings)

문자열(Strings)

파이썬에서 문자열들은 작은 따옴표 ' 또는 큰 따옴표 " 에 둘러쌓여진다.

따라서  'hello' 와   "hello" 는같다.

당신은 문자열을  print() 함수를 시용하여 출력할 수 있다.

print("Hello")
print('Hello')

 

변수에 문자열 할당하기

변수에 문자열을 할당하기 위해서는 변수의 이름 뒤에 등호를 사용하고 문자열을 할당해주면 된다.

a = "Hello"
print(a)

 

여러줄의 문자열

당신은 또한 여러줄인 문자열을 따옴표를 세번 사용함으로서 변수에 할당할 수 있습니다.

a = """Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua."""
print(a)

a = '''Lorem ipsum dolor sit amet,
consectetur adipiscing elit,
sed do eiusmod tempor incididunt
ut labore et dolore magna aliqua.'''
print(a)

 

문자열은 배열이다

다른 프로그래밍 언어들에서도 그렇듯이 파이썬에서의 문자열은 유니코드 글자들을 대체하는 byte들의 배열이다.

그러나 파이썬은 문자 데이터형식을 갖지 않고 한 글자는 단순하게 길이가 1인 문자열이다.

그러므로 대괄호는 문자열의 구성요소(각 글자)에 접글할 때 사용된다.

a = "Hello, World!"
print(a[1])

▲ 배열을 인덱스가 0부터 시작이므로 인데스1의 값은 e이다.

 

문자열을 통하여 반복하기

for x in "banana":
	print(x)

▲ 파이썬에서는 반복문은 C#과는 다르게 생겼다. 익혀두자.

 

문자열의 길이

문자열의 길이를 얻기위해서는  len()  함수를 사용한다.

a = "Hello, World!"
print(len(a))

 

문자열 확인하기

특정한 문구나 글자가 현재 문자열에 존재하는지 확인하기 위해서는  in 키워드를 사용한다.

txt = "The best things in llife are free!"
print("free" in txt)

▲ bool값으로 반환해준다.

 

만약 이것을  if 문으로 선언한다면

txt = "The best things in life are free!"
if "free" in txt:
	print("Yes, 'free' is present.")

 

 

그렇지 않은 경우 확인하기

특정한 문구나 글자가 존재하지 않는 것을 확인하고 싶다면  not in  키워드를 사용하자.

txt = "The best things in life are free!"
print("expensive" not in txt)

▲ 마찬가지로 bool타입으로 반환한다.

 

이것을  if 문으로 선언한다면

txt ="The best things in life are free!"
if "expensive" not in txt:
	print("No, 'expensive" is NOT present.")


파이썬 - 문자열 가르기(Slicing Strings)

가르기(Slicing)

당신은 문자열을 갈라냄으로써 어떠한 범위의 문자들을 반환할 수 있습니다.

콜론 :  으로 나눠주며 시작 인덱스와 마지막 인덱스를 정하면 문자열의 일부를 반환할 수 있습니다.

b = "Hello, World!"
print(b[2:5])

 

마지막까지 쪼개기

마지막 인덱스를 비움으로써 쪼갤때의 범위는 문자열의 끝까지 설정됩니다.

b = "Hello, World!"
print(b[2:])

 

음수 인덱스 사용(Negative Indexing)

음수의 인덱스를 사용하여 문자열의 뒷부분부터 쪼갤 수 있습니다.

b = "Hello, World!"
print(b[-5:-2])


문자열 변환하기

대문자로 변환하기

 upper() 메서드를 사용함으로서 문자열을 대문자로 만들어줄 수 있습니다.

a = "Hello, World!"
print(a.upper())

 

소문자로 변환하기

 lower() 을 사용하여 문자열을 소문자로 바꿔줄 수 있습니다.

a = "Hello, World!"
print(a.lower())

 

필요없는 공백 없애기

필요없는 공백은 문자열이 모두 끝난 뒤, 또는 시작 전에 잘못 입력한 공백들을 의미합니다. 이것들은  strip()  을 사용하여 제거해줄 수 있습니다.

a = " Hello, World!  "
print(a.strip())

 

글자 대체하기

 replace()  를 사용하여 어떠한 글자와 또 다른 글자로 바꿀 수 있습니다.

a = "Hello, World!"
print(a.replace("H", "J"))

▲ H가 J로 변한 모습이다.

 

문자열 나누기

 split()  메서드는 지정된 구분기호 사이에 있는 문자들을 리스트로 만들어줍니다.

a = "Hello, World!"
print(a.split(","))

▲ " , "를 구분기호로 지정했으므로 " , "를 기준으로 나뉘어지며 리스트로 생성된다.