본 코딩강의에서 배운 4장 목차는 다음과 같다.
4-1. 문자열
4-2. 슬라이싱
4-3. 문자열처리함수
4-4. 문자열 포맷
4-5. 퀴즈 #3
https://www.youtube.com/watch?v=kWiCuklohdY
4-1. 문자열
※ 문자열 여러 줄 출력할 때 : """ ~ """ (큰 따옴표 3개를 앞뒤로 설정)
sentence = '나는 소년입니다' # 작은 따옴표
print(sentence)
sentence2 = "파이썬은 쉬워요" # 큰 따옴표
print(sentence2)
sentence3 = """
나는 소년이고,
파이썬은 쉬워요
"""
print(sentence3)
4-2. 슬라이싱: 필요한 만큼 잘라서 사용하는 것
jumin = "990120-1234567"
print("성별 : " + jumin[7]) # 7번째 위치에 있는 값을 가져옴
print("연 : " + jumin[0:2]) # 0~2번째 직전값까지 가져옴 -> (0, 1)번째 있는 값만 가져오기
print("월 : " + jumin[2:4]) # (2, 3)번째 있는 값만 가져오기
print("일 : " + jumin[4:6]) # (4, 5)번째 있는 값만 가져오기
print("생년월일 : " + jumin[:6]) # 처음부터 6 직전까지
print("뒤 7자리 : " + jumin[7:]) # 7 부터 끝까지
print("뒤 7자리 (뒤에서부터) : " + jumin[-7:]) # 맨 뒤에서 7번째부터 끝까지
4-3. 문자열처리함수
- lower() : 해당 문자를 소문자로 출력
- upper() : 해당 문자를 대문자로 출력
- isupper() : 해당문자가 대문자인지 확인하는 함수 (대문자면 True 아니면 False 출력)
- len(str) : 전체 문자열의 길이를 반환하여 출력
- replace("word1", "word2") : 해당문자(word1)를 찾아서 바꾸고자하는 문자(word2)로 바꾸기
- index("word") : 해당문자(word)의 위치 인덱스 반환
- find("word") : 원하는 값(word) 찾기 (원하는 값이 없을 경우 -1 반환)
- count("word") : 해당 값(word)가 총 몇 번 등장하는지 반환
python = "Python is Amazing"
print(python.lower()) # 모든 문자가 소문자로 출력
print(python.upper()) # 모든 문자가 대문자로 출력
print(python[0].isupper()) # 0번째 문자가 대문자인지 알려줌
print(len(python)) # 전체 문자열의 길이를 반환
print(python.replace("Python", "Java")) # 해당 문자를 찾아서 바꾸기
index = python.index("n") # 어떤 문자가 어느 위치에 있는지 확인
print(index)
index = python.index("n", index + 1) # 앞에서 찾은 위치 다음부터 찾기
print(index)
# 원하는 값이 없을 때
print(python.find("Java")) # -1
# print(python.index("Java")) # 오류 -> 프로그램 종료
print(python.count("n")) # n이 총 몇 번 등장하는지 출력
4-4. 문자열 포맷
- %d : 정수 유형
- %c : 문자 유형
- %s : 문자열 유형, 유형 상관없이 출력이 가능
- 변수 설정하기 : 1. % 값 or % (값1, 값2, ....) 2. .format(값1, 값2, ...) or format(변수명1=값1, 변수명2=값2 ...)
# 방법 1
print("나는 %d살입니다." % 20) # 정수
print("나는 %s을 좋아해요." % "파이썬") # 문자열
print("Apple은 %c로 시작해요." % "A") # 문자
# %s는 유형 상관없이 출력 가능
print("나는 %s살입니다." % 20)
print("나는 %s색과 %s색을 좋아해요." % ("파란", "빨간")) # 2가지 이상 값을 사용할 때
# 방법 2
print("나는 {}살입니다.".format(20))
print("나는 {}색과 {}색을 좋아해요.".format("파란", "빨간")) # 2가지 이상 값을 사용할 때
# {0}부분에 "파란", {1}부분에 "빨간"을 넣음
print("나는 {0}색과 {1}색을 좋아해요.".format("파란", "빨간"))
print("나는 {1}색과 {0}색을 좋아해요.".format("파란", "빨간"))
# 방법 3
print("나는 {age}살이며, {color}색을 좋아해요.".format(age = 20, color = "빨간"))
print("나는 {age}살이며, {color}색을 좋아해요.".format(color = "빨간", age = 20))
# 방법 4 (v3.6 이상~)
age = 20
color = "빨간"
print(f"나는 {age}살이며, {color}색을 좋아해요.") # 실제 변수에 저장된 값을 가져다가 씀
[실행결과]
----------------------------------- 방법 1
나는 20살입니다.
나는 파이썬을 좋아해요.
Apple은 A로 시작해요.
나는 20살입니다.
나는 파란색과 빨간색을 좋아해요.
----------------------------------- 방법 2
나는 20살입니다.
나는 파란색과 빨간색을 좋아해요.
나는 파란색과 빨간색을 좋아해요.
나는 빨간색과 파란색을 좋아해요.
----------------------------------- 방법 3
나는 20살이며, 빨간색을 좋아해요.
나는 20살이며, 빨간색을 좋아해요.
----------------------------------- 방법 4
나는 20살이며, 빨간색을 좋아해요.
4-5. 탈출문자
- \n : 줄바꿈
- \", \' : 문장 내에서 따옴표 표시
- \\ : 문장 내에서 \ 표시
- \r : 커서를 맨 앞으로 이동
- \b : 백스페이스(Backspace) 역할 (한 글자 삭제)
- \t : 텝(Tab) 역할
# \n : 줄바꿈
print("백문이 불여일견\n백견이 불여일타")
# \", \' : 문장 내에서 따옴표
# 저는 "나도코딩"입니다.
print("저는 '나도코딩'입니다.")
print('저는 "나도코딩"입니다.')
print("저는 \"나도코딩\"입니다.") # 문장 내에서 큰 따옴표("") 출력
print("저는 \'나도코딩\'입니다.")
# \\ : 문장 내에서 \
print("C:\\Users\\User\\OneDrive\\Desktop\PythonWorkspace>")
# /r : 커서를 맨 앞으로 이동
print("Red Apple\rPine")
# \b : 백스페이스 (한 글자 삭제)
print("Redd\bApple")
# \t : 탭
print("Red\tApple")
[실행결과]
백문이 불여일견
백견이 불여일타
저는 '나도코딩'입니다.
저는 "나도코딩"입니다.
저는 "나도코딩"입니다.
저는 '나도코딩'입니다.
C:\Users\User\OneDrive\Desktop\PythonWorkspace>
PineApple <--- 맨 앞부터 \r뒤의 Pine만큼 (4글자) 출력하고 다음 문자 차례대로 출력
RedApple <---- 한 글자 삭제 (Backspace)
Red Apple <---- 탭(Tab) 만큼 띄어쓰기
4-6. 퀴즈 #3 : 사이트별로 비밀번호를 만들어 주는 프로그램을 작성하시오.
- 규칙 1 : http:// 부분은 제외 → naver.com
- 규칙 2 : 처음 만나는 점(.) 이후 부분은 제외 → naver
- 규칙 3 : 남은 글자 중 처음 세 자리(nav) + 글자 갯수(5) + 글자 내 'e' 갯수(1) + "!"로 구성(!)
- 예) 생성된 비밀번호 : nav51!
url = "http://naver.com"
my_str = url.replace("http://", "") # 규칙 1
print(my_str)
my_str = my_str[:my_str.index(".")] # 규칙 2
# 처음부터 .의 위치 직전까지 자름 = my_str[0:5] -> 0 ~ 5 직전까지. (0, 1, 2, 3, 4)
print(my_str)
password = my_str[:3] + str(len(my_str)) + str(my_str.count("e")) + "!"
print("{0} 의 비밀번호는 {1} 입니다.".format(url, password))
[실행결과]
naver.com <--- 규칙 1 적용한 결과
naver <--- 규칙 2 적용한 결과
http://naver.com 의 비밀번호는 nav51! 입니다. <--- 최종 결과
'Python > 나도코딩' 카테고리의 다른 글
[Python 파이썬] 나도코딩 코딩강의 따라하기 (기본편) 5장 (0) | 2021.06.30 |
---|---|
[Python 파이썬] 나도코딩 코딩강의 따라하기 (기본편) 3장 (0) | 2021.06.24 |
[Python 파이썬] 나도코딩 코딩강의 따라하기 (기본편) 2장 (2) | 2021.06.20 |