[Python] 문자열

ㅎㅎ·2021년 5월 12일
0

Python

목록 보기
4/27




📌문자열(string)

  • 문자, 단어 등으로 구성된 문자들의 집합
  • ""(큰따옴표)로 둘러싸여 있음

📌문자열 포매팅(formatting)

  • 문자열 속 특정한 위치에 특정한 값을 삽입해 주는 것
  • 문자열 일부가 변할 수 있는 가능성이 있는 경우 문자열 포매팅을 사용함.
  • 다양한 방법으로 포매팅을 할수 있음.

1) % 사용하기

1. 숫자 바로 대입 -> %d

print("I eat %d apples." % 3)

2. 문자열 바로 대입 -> %s

print("i ate %s" % "pizza")

3. 숫자 값을 나타내는 변수로 대입

number =3
print("i ate %d apples" % number)

4. 2개 이상의 값 넣기

number = 10
day = "three"
print("I ate %d apples. so I was sick for %s days." % (number, day))

5. 소수점 표현하기

a= 3.141592

print("%0.4f" % a) # 다섯번째 자리에서 반올림
print("%0.3f" % a) #네번째 자리에서 반올림
print("%0.1f" % a) #두번째 자리에서 반올릶

2) format 함수를 사용하기

  • {}.format() 사용

1. 숫자 바로 대입하기

print("i eat {} apples".format(3))

2. 문자열 바로 대입하기

print("i eat {} apples".format("six"))

3. 숫자 값을 가진 변수로 대입하기

number=4
print("i eat {} apples".format(number))

4. 2개 이상의 값 넣기

number=4
thing = "books"
print("I have {} books and i wanna buy more {}.".format(number,thing))

5. 이름으로 넣기

print("I have {number} books and i wanna buy more {thing}.".format(number=4,thing="books"))

6. 오른쪽, 왼쪽, 가운데 정렬(자릿수)

#오른쪽으로 문자열의 총 자릿수 20
print("{0:>20}".format("hi"))
#오른쪽으로 문자열 총 자릿수 10
print("{0:>10}".format("hi"))
#왼쪽 정렬
print("{0:<10}".format("hi"))
#가운데 정렬
print("{0:^10}".format("hi"))

7. 공백 채우기

print("{0:=^10}".format("hi"))
print("{0:!^10}".format("hi"))

8. 소수점 표현하기

a= 3.141592

print("{0:0.4f}".format(a))
print("{0:0.3f}".format(a))
print("{0:0.1f}".format(a))
  • {0}는 인덱스 순서를 표현했을 뿐, 안에 무엇이 들어가도 상관 X

3) f 사용하기

  • 문자열 앞에 f를 붙이기
  • 파이선 3.6부터 사용가능
name="길동이"
age="10"

print(f"안녕하세요 나의 이름은 {name}이고, 나이는 {age}입니다.")

- 정렬하기

print(f"{'hi':<10}") # 왼쪽 정렬 
print(f"{'hi':>10}") # 오른쪽 정렬
print(f"{'hi':^10}") # 가운데 정렬

- 소수점 표현하기

a = 3.141592

print(f"{a:0.4f}")
print(f"{a:0.3f}")
print(f"{a:0.1f}")

- 문자열 포맷 코드

  • %s : 문자열(string) -> 뭐든 문자열로 바꿔버림
  • %c : 문자 1개 (character)
  • %d : 정수 (integer)
  • %f : 실수 (floating-point)
  • %o : 8진수
  • %x : 16진수
  • %% : literal% (문자 % 자체)

📌문자열 관련 함수들

  • .count() :문자 개수 세기
  • .find() : 위치 알려주기 (문자가 없다면 -1 반환)
  • .index() : 위치 알려주기(맨 처음 나온 위치 반환, 문자가 없다면 오류)
  • .join() : 문자열 삽입
  • .upper() : 소문자 -> 대문자
  • .lower() : 대문자 -> 소문자
  • .rstrip() : 완쪽 공백 지우기
  • .lstrip() : 오른쪽 공백 지우기
  • .strip() : 양쪽 공백 지우기
  • .replace(a,b) : 문자열 바꾸기
  • .split() : 괄호 안에 넣는 문자에 따라 나누기
    • ex) split() - 공백을 기준으로 , split.(":") - :를 기준으로

0개의 댓글