슬라이싱
# 슬라이싱
my_str = "010624-1234567"
print("성별 : " + jumin[7])
print("연 : " + jumin[0:2])
print("월 : " + jumin[2:4])
print("월 : " + jumin[4:6])
print("생년월일 : " + jumin[:6])
print("뒤 6자리 : " + jumin[7:])
print("뒤 6자리 (뒤에부터) : " + jumin[-7:])
문자열 처리
형식: 문자열(or 변수).함수()
※ C언어에서는 "함수(문자열 or 변수)" 형식으로 사용하는 것과 차이가 있다.
No. | 함수 | 의미 |
1 | lower() | 문자열을 소문자로 변환 |
2 | upper() | 문자열을 대문자로 변환 |
3 | islower() | 문자열이 소문자인지 확인 |
4 | isupper() | 문자열이 대문자인지 확인 |
5 | replace() | 문자열 바꾸기 |
6 | index() | 찾는 문자열의 index (없으면 error 발생) |
7 | find() | 찾는 문자열의 index ( or -1 return) |
8 | count() | 문자열이 나온 횟수 |
python = "Python is Amazing"
print(python.lower())
# C언어 - tolower()
print(python.upper())
# C언어 - toupper()
print(python[0].isupper())
# C언어 - isupper()
# ★★★★★★★★ Only Python ★★★★★★★★★ #
print(python.replace("Python", "Java"))
# 일시적으로 Python이 Java로 바뀌어 출력될 뿐
# 실제로 변수의 값이 바뀌진 않는다.
index = python.index("n") # 처음 발견한 n의 인덱스
print(index) # 'Python'에서의 n
index = python.index("n", index + 1) # 인덱스 6 이후부터 찾아 처음 발견한 n의 인덱스
print(index) # 'is Amazing'에서의 n
index = python.index("n", 2, 6) # 인덱스 2~ 6 직전까지 찾아 처음 발견한 n의 인덱스
print(index) # 'thon'에서의 n (인덱스 5)
# index = python.index("Java")
# # Java가 없으면 오류가 발생하며 프로그램 종료
print(python.find("Java"))
print(python.count("n"))
# ★★★★★★★★ Only Python ★★★★★★★★★ #
# Python에서 구간을 설정할 때에는
# 구간 설정 예시 : (a, b)라면
# a부터 b 직전까지, 즉 (b-1)까지의 범위이다.
문자열 포매팅 (String Formatting)
문자열과 다른 자료형을 연결하려면 형변환을 해야 한다.
그런데 형변환 없이 문자열과 다른 자료형을 연결하는 방법이 있다.
원하는 위치에 특정한 값(or 변수)을 넣어서 하나의 문자열로 표현하는 방법이다.
그 방법은 여러 가지이며, 이 중 가장 편한 방법을 사용하면 된다.
<방법 1 : 서식 지정자(Format Specifier) 이용하기>
※ 서식 지정자 중에서 %s를 사용하면 정수, 문자, 문자열 등 자료형에 상관 없이 모든 값을 넣을 수 있다.
- C언어와 다른 점
<방법 2-1 : format() 함수 사용하기 (기본)>
문자열에서 값을 넣을 위치에 중괄호 {}를 표시하고 뒤에 format(값1, 값2, ...) 형태로 값을 입력한다.
그리고 점(.)으로 문자열과 format() 함수를 연결하면 값들이 문자열의 중괄호 부분에 들어간다.
<방법 2-2 : format() 함수 사용하기 (변수)>
<방법3 : f-문자열 (f-string) 사용하기>
문자열 앞에 f를 추가하면 문자열이 나오기 전에 정의한 변수의 값을 문자열에서 사용할 수 있습니다.
단, 이 방법은 파이썬 3.6v 이상일 떄만 사용할 수 있습니다.
# 4-4. 문자열포맷
# 방법 1 : 서식 지정자(Format Specifier) 이용하기
print("나는 %d살입니다." % 20)
print("나는 %s을 좋아해요." % "파이썬")
print("Apple 은 %c로 시작해요." % "A")
print("나는 %s살입니다." % 20)
print("나는 %s색과 %s색을 좋아해요." % ("파란", "빨간"))
# 방법 2-1
print("나는 {}살입니다.".format(20))
print("나는 {}색과 {}색을 좋아해요.".format("파란", "빨간"))
print("나는 {0}색과 {1}색을 좋아해요.".format("파란", "빨간"))
print("나는 {1}색과 {0}색을 좋아해요.".format("파란", "빨간"))
# 방법 2-2
print("나는 {age}살이며, {color}색을 좋아해요.".format(age = 20, color="빨간"))
print("나는 {age}살이며, {color}색을 좋아해요.".format(color="빨간", age=20))
# 방법 3 (v3.6 이상~)
age = 20
color = "빨간"
print(f"나는 {age}살이며, {color}색을 좋아해요.")
이스케이프 시퀀스
컴퓨터와 주변 기기의 상태를 바꾸는 데에 쓰이는 일련의 문자열
\r
커서를 맨 앞으로 이동시킨다.
print("Red Apple\rPine"
위와 같은 명령어가 있다면
Red Apple
을 출력 후 커서를 맨 앞으로 이동시킨 뒤
|Red Apple
Pine을 그대로 출력하여 "Red "를 덮어 쓰는 효과를 낸다.
PineApple
# \n : 줄바꿈
# \" \' : 문장 내에서 따옴표
# \\ : 문장 내에서 \
print("C:\\Users\\Nadocoding\\Desktop\\PythonWOrkspace>")
# \r : 커서를 맨 앞으로 이동
print("Red Apple\rPine")
# \b : 백스페이스 (한 글자 삭제)
print("Redd\bApple")
# \t : 탭
print("Red\tApple")
※ C언어와 다른 점
C언어에서는 \r이 캐리지리턴이라고 한 줄을 지우는 문자열이다.
파이썬에서는 커서를 맨 앞으로 이동시키는 문자열이다.
'Programming Language > Python 기본문법' 카테고리의 다른 글
[Python] 나도코딩 파이썬 입문 - 문풀 Part4.6~5 (0) | 2024.07.16 |
---|---|
[Python] 문자열 결합하기 (0) | 2024.07.16 |
[Python] 명령 프롬프트에서 파이썬 실행하기 (0) | 2024.07.13 |
[Python] 나도코딩 파이썬 입문 - 문풀 Part1~Part4 (0) | 2024.07.13 |
[Python] 기본 문법(1): 자료형, 변수, 연산, 숫자 처리 함수, 랜덤 함수 (0) | 2024.07.13 |