SH1R0_HACKER
파이썬 문자열 본문
< 문자열에서 익혀야 하는 함수들 >
len(), map(), input(), split(), format(), f, upper(), lower(), lstrip(), rstrip(), strip(), replace()
1.문자열 곱하기
print("*"*10)
print("안녕?")
print("*"*10)
# 출력 결과
# **********
# 안녕?
# **********
2. 문자열 길이 출력
x = "Hello World!"
print(len(x)) # 12가 출력된다.
3.문자열 슬라이싱
a = "Hello World!"
print(a[0:5]) # Hello만 출력된다.
# a[0:5] => 0~4까지 출력 (범위 : 0 <= a < 5)
# a[6:] = World! 출력 (6부터 문자열 끝까지)
# a[:5] = Hello 출력 (문자열 처음부터 5까지)
# a[:] = Hello World! 출력 (문자열 처음부터 끝까지)
# a[6:-2] = Worl 출력 (-1은 뒤에서부터 출력한다.)
# a[0] = H
# a[1] = e
# a[2] = l
# a[3] = l
# a[4] = o
# a[5] = 공백
# a[6] = W
# a[7] = o
# a[8] = r
# a[9] = l
# a[10] = d
# a[11] = !
4. 문자열 슬라이싱을 이용하여 문자열 바꾸기
a = "Hello Word!"
b = a[:9]+'l'+a[9:]
print(b) # Hello World!가 출력된다.
5. 문자열과 정수를 입력받아 출력하기
# 입력받은 문자열을 name 변수에 저장합니다.
name = input("이름을 입력하세요 : ")
# 입력받은 정수를 각각 h, y변수에 저장합니다.
h,m = map(int,input("현재 시각을 입력하세요 (ex : 3 15) : ").split())
print("%s님 반갑습니다." % name)
print("현재 시각은 %d시 %d분 입니다." % (h,m))
# 문자열 : %s
# 문자1개 : %c
# 정수 : %d
# 부동소수 : %f
# 8진수 : %o
6. %d와 %를 같이 쓸 경우
print('Battery %d%% left.' % 50) # % 두 개를 사용하여 50%가 출력되게 한다.
7. 5번의 업그레이드 버전
- format()함수를 사용한 포매팅
name = input("이름을 입력하세요 : ")
h,m = map(int,input("현재 시각을 입력하세요 (ex : 03 15) : ").split())
print("{0}님 반갑습니다.".format(name))
print("현재 시각은 {hour}시 {minute}분 입니다.".format(hour=h,minute=m))
8. 정렬
print("%10s" % "Hacker")
# 오른쪽 정렬하고 앞은 공백
# _ _ _ _ H a c k e r
print("%-6sHacker" % "White")
# "Hacker을 왼쪽 정렬하고 앞은 White 출력
# White H a c k e r
print("{0:<10}".format("Hacker"))
# 왼쪽 정렬
# H a c k e r _ _ _ _
print("{0:>10}".format("Hacker"))
# 오른쪽 정렬
# _ _ _ _ H a c k e r
print("{0:^10}".format("Hacker"))
# 가운데 정렬
# _ _ H a c k e r _ _
print("{0:=^10}".format("Hacker"))
# 가운데 정렬 후 공백을 *로 채운다.
# * * H a c k e r * *
print("{0:-<10}".format("Hacker"))
# 왼쪽 정렬 후 공백을 -로 채운다.
# H a c k e r - - - -
9. 7번의 업그레이드 버전 (소수점 표현 + { 문자} 표현 + f문자열 포매팅)
name = input("이름을 입력하세요: ")
age = int(input("나이를 입력하세요: "))
h,m = map(int,input("현재 시각을 입력하세요 (ex. 03 15): ").split())
pi = 3.14159265359
#f 문자열 포매팅은 생성된 변수값을 참조할 수 있다.
print(f'{name}님 반갑습니다.')
print(f'현재시각은 {h}시 {m}분 입니다.')
print(f'{name}님의 10년 뒤 나이는 {age+10}살 입니다.')
#format 함수를 사용하여 소수점 2자리까지 표시하기
print("파이값은","{0:0.2f}".format(pi))
#{ Hacker } 출력하기
print("{{Hacker}}".format())
10. 문자 개수세기 & 위치 찾기
a = "White Hacker"
# 문자 개수
print(a.count('e')) # e의 개수, 2출력
# 문자 위치 찾기
print(a.find('e')) # 문자열 중 e가 처음으로 나온 위치, 4출력
print(a.find('b')) # b라는 문자열은 없으므로 -1 출력
print(a.index('e')) # find와 같은 역할을 한다.
print(a.index('b')) # 없는 문자열을 출력하면 오류를 발생시킨다.
11. 문자열 삽입 & 대소문자 변경 & 공백 지우기 & 문자열 바꾸고 나누기
# 문자열 삽입하기
print(",".join('Hacker')) # H,a,c,k,e,r 출력
a = " aBcD "
# 소문자 -> 대문자
print(a.upper()) # ABCD 출력
# 대문자 -> 소문자
print(a.lower()) # abcd 출력
# 공백 지우기
print(a.lstrip()) # 왼쪽에 있는 한 칸 이상 연속된 공백을 모두 지운다.
print(a.rstrip()) # 오른쪽에 있는 한 칸 이상 연속된 공백을 모두 지운다.
print(a.strip()) # 양쪽에 있는 한 칸 이상 연속된 공백을 모두 지운다.
b = "My nickname : Unknown"
# 문자열 바꾸기
print(b.replace("Unknown","Shiro Hacker")) # My nickname : Shiro Hacker 출력
# 문자열 나누기
print(b.split()) # ['My', 'nickname', ':', 'Unknown'] 출력
print(b.split(':')) # ['My nickname', 'Unknown'] 출력
'Programming Language > Python' 카테고리의 다른 글
파이썬 리스트 (0) | 2020.10.18 |
---|---|
print함수, 변수생성하고 입력받기 (0) | 2020.10.18 |