파이썬 기초문법 2

지리산근육곰·2021년 8월 10일
0

Python기초문법

목록 보기
2/8
post-thumbnail

3. 문자열 데이터(String)

  • 문자열 데이터란, 문자(character)의 나열을 의미한다. e.g. Hello World
  • string: Character Sequence
  • ' 과 " 로 문자열로 구분 한다.

3.1 문자열 기초

s = "Hello World"
s

type(s)

sPsalm = """As far as the east is far from the west
so far does he remove our transgression
-Psalm 103:12
"""
print(s2)  ## """~"""이경우 문자열의 space와 enter또한 저장되어 출력된다.

# 파이썬에서 "" 와 ''을 둘다 제공하는데 이유는 영어 문자열에서 줄임표현이 있기 때문이다
s3 = "I'm a boy" ## 이경우 ''을 사용하면 문자열이 중간에 끊긴다
s3

3.2 특수문자

# \n -> new line (Enter)
"Hello\nworld"

print("Hello\nworld") ## print function 을 사용할 경우 enter가 되어서 나온다.

# \t -> tab
"Hello\tworld"

print("Hello\tworld")  ## 마찬가지로 print function을 사용한다

3.3 문자열 연산하기(String Concatenation)

3.3.1 문자열 더하기

s = "Hello"
s2 = "World"
s + s2

# 공백도 str에 포함된다
s = "Hello"
s2 = " World"
s + s2

s = "Hello"
s2 = "World"
s + ' ' + s2

3.3.2 문자열 곱하기

s = "Hello"
s * 10

3.3.3 문자열 길이 len()

sPsalm = """As far as the east is far from the west
so far does he remove our transgression
-Psalm 103:12
"""
len(sPsalm)

s = "Hello World"
len(s) ## space도 포함된다.

s = """Hello
world
"""
len(s)  ## enter 또한 문자열에 포함된다.

3.4 문자열 Formatting

문자열에서 print를 할 시에 우리는 특정 조건을 걸어서 print 할 수 있다

  • 예시: 사과는 4개 있다.

3.4.1 print format

  • %s str
  • %d int
  • %f float
print("%s는 %d개 있다." % ("사과", 4))  ## %s 는 str, %d 는 int

print("%s는 %d개 있다." % ("사과", 4.7357))  ## %d는 int를 받음으로 float는 출력이 안된다.

print("%s는 %d개 있다." % (4, "사과"))  

3.4.2 str.format

  • format은 string 함수에 포함된 식이다.
print("{}는 {}개 있다.".format("사과",4))

print("{}는 {}개 있다.".format("사과","4"))

3.4.3 f-string (가장 직관적이다.)

a = "사과"; n = 4
print(f"{a}는 {n}개 있다." )

3.5 문자열 함수

3.5.1 대문자 소문자

s = "hi"
s.upper()

s = "HI"
s.lower()

3.5.2 문자열 공백 지우기

s = "  hi      "
s.strip()

s = "    Hello    World    " ## 공백 사이의 문자열의 공백을 지운다. 따라서 문자열 사이의 공백은 그대로 있다. 
s.strip()

3.5.3 문자열 삽입 join()

s = "Hello World"
",".join(s)

";".join(s)

"=".join(s)

3.5.4 문자열 나누기 split()

s = "Life is flawed so is beautiful."
s.split() ## defult는 문자 사이의 공백을 기준으로 자른다.

s.split('i') ## 문자를 넣을 경우 문자를 기준으로 자른다.

3.5.5 문자열 바꾸기 replace()

s = "Life is flawed so is beautiful."
s.replace("so", "and")

s.replace(" ", "")  ## 공백을 지울 때도 사용 가능하다.

0개의 댓글