문자열.py

2023. 3. 8. 21:43·python
## 문자열
sentence = "나는 소년입니다."
print(sentence)
sentence2 = "파이썬은 쉬워요."
print(sentence2)
# 문자열에 여러줄 입력
sentence3 = """
나는 소년이고,
파이썬은 쉬워요.
"""
print(sentence3)
  • 문자열을 여러줄 입력할 때, """~""" 사용.
## 슬라이싱
jumin = "991231-1234567"
print("성별 : "+jumin[7])
# jumin 텍스트의 0~2 직전까지의 값을 가져옴.
print("연: " + jumin[0:2])
print("월: " + jumin[2:4])
print("일: " + jumin[4:6])

# 문자 슬라이싱에서 `:`으로 시작하면 처음부터
print("생년월일 : "+jumin[:6])
# 문자 슬라이싱에서 `:`으로 끝나면 마지막까지
print("뒤 7자리 : "+jumin[7:])
# 문자 슬라이싱에서 음수로 시작하면 맨 뒤에서 7 번째부터 끝까지
print("뒤 7자리 : "+jumin[-7:])
  • 슬라이싱 기능은 list에서도 사용하기 때문에 알아두자
    ㄴ str[n] : str의 n번째 텍스트 불러옴
    ㄴ str[n:m] : str의 n~m-1번째 텍스트 불러옴
    ㄴ str[:m] : str의 0~m-1번째 텍스트 불러옴
    ㄴ str[n:] : str의 n~마지막까지 텍스트 불러옴
    ㄴ str[-n:-m] : str기준 뒤에서 n번째부터 m+1번째까지
##문자열 처리함수
python = "Python is Amazing"
# python 을 소문자로
print(python.lower())
# python 을 대문자로
print(python.upper())
# python의 첫번째 문자가 대문자인지 확인
print(python[0].isupper())

# python의 길이 구하기
print(len(python))
# python의 Python을 Java로 교체
print(python.replace("Python","Java"))

# python 안의 "n"의 위치 출력 (첫번째)
index = python.index("n")
print(index)

# index+1 이후부터의 "n"의 위치 출력
index = python.index("n", index+1)
print(index)

# python.index("n")과 동일
print(python.find("n"))

# python에 없는 텍스트 찾는 경우,
# find는 없으면 -1 출력 / index 는 에러 발생
print(python.find("Java"))
# print(python.index("Java"))

# python 내부의 "n"의 개수 출력
print(python.count("n"))
  • str.index(”str2”) / str1.find(”str2”) 은 동일하게 “str2”위치를 찾지만,
    str2가 str 안에 없을 때, index 는 에러, find는 -1이 출력된다.
## 문자열 포멧

# 방법1
print("나는 %d살입니다." %20)
print("나는 %s를 좋아해요" %"파이썬")
print("Apple 은 %c로 시작해요" %"A")

# %s를 사용하면 값과 관계없이 출력할수 있음.
print("나는 %s살입니다." %20.323)

print("나는 %s색과 %s색을 좋아해요" %("분홍", "하늘"))

# 방법2
print("나는 {}살입니다.".format(20))
# format의 index값을 지정하여 뒤의 출력순서변경 가능.
print("나는 {1}색과 {0}색을 좋아해요" .format("분홍", "하늘"))

# 방법3
print("나는 {age}살이며, {color}색을 좋아해요."\\
      .format(age = 20, color = "분홍"))
print("나는 {age}살이며, {color}색을 좋아해요."\\
      .format(color = "하늘", age = 29))

# 방법4
age = 20
color = "분홍"
# 큰따옴표 앞에 f로 시작.
print(f"나는 {age}살이며, {color}색을 좋아해요.")
  • 출력문을 다양한 포멧으로 할 수 있다. (개인적으로 .format 을 선호함)
## 탈출문자
# \\n : 줄바꿈
print("백문이 불여일견\\n백견이 불여일타")
# \\", \\' : 문장 내에서 따옴표를 사용가능
print("저는 \\"조OO\\"입니다.")

# \\+문자 : 탈출문자가 된다.
# \\사용을 위해서는 \\\\를 사용해야 함.
print("C:\\\\Users\\\\shop2\\\\OneDrive\\\\바탕 화면\\\\python")

# \\r : 커서를 맨 앞으로 이동.
print("Red apple \\rPine") # PineRed apple

# \\b : backspae, 한 글자 삭제
print("Redd\\bApple")

# \\t : tap
print("Red\\tApple")
  • 탈출문자는 \\n , \\” , \\’, \\t 를 주로 사용한다.
## 퀴즈
'''
사이트별 비밀번호를 만들어주는 프로그램 작성.
<http://naver.com>
1. http://, 처음 만나는 . 이후 부분 제외 => naver
2. 남은 글자 중 처음 세자리 + 글자개수 + 글자 내 'e'개수 + "!" 로 구성
ex ) nav51!
'''

# 내 답변
site = "<http://naver.com>"
site = site[site.find("//")+2:site.find(".")]
site = site+str(len(site))+str(site.count("e"))+"!"
print(site)

# 선생님 답변
site = "<http://naver.com>"
site = site.replace("http://", "")
site = site[:site.index(".")]
site = site+str(len(site))+str(site.count("e"))+"!"
print(site)
  • 내답변을 보면 “//” 위치 + 2부터 자르는 반면
    선생님은 “http://” 를 아예 제거해버리는데, 이게 훨씬 깔끔한듯

'python' 카테고리의 다른 글

분기.py  (0) 2023.03.11
자료구조.py  (0) 2023.03.11
연산자.py  (0) 2023.03.07
자료형.py  (0) 2023.03.07
코드공부 시작하기.  (0) 2023.03.07
'python' 카테고리의 다른 글
  • 분기.py
  • 자료구조.py
  • 연산자.py
  • 자료형.py
몽자비루
몽자비루
코딩공부 정리용 블로그입니다.
  • 몽자비루
    공부하는 블로그
    몽자비루
  • 전체
    오늘
    어제
    • 분류 전체보기 (176) N
      • python (30)
        • python_selenium (16)
        • python_pygame (3)
      • appium (0)
      • 쿠버네티스 (60)
        • linux (8)
        • shell programming (8)
        • docker (18)
        • cka (23)
      • postman&API (16)
      • QA성장하기 (32)
        • 개발자에서 아키텍트로 스터디 (6)
        • 소프트웨어 공학 이해도 높이기 (6)
        • 테스팅 전문 지식 쌓기 (18)
        • 제4회 QA conference (2)
      • 에러일기 (1)
      • Server&load (35)
        • AWS (27)
        • load test (5)
        • CI CD (3)
        • Jmeter (0)
      • RAG 을 활용하여 LLM 만들어보기 (1) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    네트워크 테스트
    e2c
    스터디
    .cpu
    로스트아크
    API
    linux
    테스트 결과보고서
    앱공존성
    QAKOREA
    python
    cka
    qa
    vi에디터
    쿠버네티스
    로스트아크api
    application log
    포스트맨
    리눅스
    사드웨어리소스
    k8s
    개발자에서아키텍트로
    애플리케이션로그
    LOSTARK
    도커
    qa conference
    공존성테스트
    테스트스크립트
    postman
    qa 컨퍼런스
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
몽자비루
문자열.py
상단으로

티스토리툴바