2017 멀티캠퍼스/Python

[Python] #10 파이썬 문자열

꿈꾸는어린이 2018. 1. 9. 21:26

//

일시 : 2018.01.05 11:00am ~ 14:00 pm

내용 : chap 8 문자열

​ ※ 토니에서 자동완성 참조할 때 ctrl + space

//


문자열

  • 리스트와 비슷한 문자열

    ss = "파이썬만세"

    ss[0] -> '파' 출력

    ss[1:3] -> '이썬' 출력

  • 리스트는 [ ]로 출력되고, 문자열은 ' '로 출력됨

  • 더하기 ss = '파이썬' + '만세'

  • 곱하기 ss = '파이썬' * 3 => 문자열 3번 반복

  • len() 함수 : 문자열의 길이 파악(리스트와 동일) len(ss)

  • upper(), lower() 함수 : 소문자->대문자, 대문자->소문자

    swapcase() 함수 : 대소문자 상호 변환

    title() 함수 : 단어 제일 앞 글자만 대문자 변환

    ex ) ss.upper() ss.title()

  • 문자열 함수 표

    ss = "Python is Easy"

문자열 함수용도사용 예
count('찾을 문자열')찾을 문자열이 몇 개 들었는지 개수를 센다ss.count('Python')
find('찾을 문자열')찾을 문자열의 인덱스 반환ss.find('Python')
find('찾을 문자열', 시작위치)시작 위치부터 문자열을 찾아 인덱스 반환 ss.find("Python", 4)
찾을 문자열 없으면 -1 반환
index('찾을 문자열')find()와 동일, but 찾을 문자열 없으면 오류ss.index('Python')
startswith('찾을 문자열')찾을 문자열로 시작하면 True, 그렇지 않으면 Falsess.startswith('P')
  • strip() : 양쪽 공백 제거

    rstrip() : 오른쪽 공백 제거

    lstrip() : 왼쪽 공백 제거

    ex ) ss = ' Python '

    ss.strip()

  • strip() 함수로 특정 문자도 제거 가능, ss.strip('-')

  • 문자열 변경 : ss.replace('기존 문자열', '바꿀 문자열')

  • split(), splitlines() : 문자열 분리

    => 문자열을 공백이나 다른 문자로 분리해서 리스트를 반환

  • ss.center(10) : 10만큼 전체 자릿수를 잡은 뒤 가운데 정렬

    ss.rjust(10), ss.ljust(10) : 오른쪽, 왼쪽 정렬

  • '1111'.isdigit() : 전부 숫자로 구성되었는지 확인(반환값 True/False)

    'abcd'.isalpha() : 전부 글자(영어,한글)로 구성되었는지 확인

    'abc123'.isalnum() : 글자와 숫자가 섞여있는지 확인

    'abc'.islower() : 전체가 소문자로 구성되어있는지

    'ABC'.isupper() : 전체가 대문자로 구성되어있는지

    ' '.isspace() : 전부 공백문자인지




실습

08-02


  inStr, outStr ='', ''

inStr = input("문자열을 입력하세요 : ")

count = len(inStr)
for i in range(0, count):
outStr += inStr[count - (i+1)]

print("내용을 거꾸로 출력 --> %s" % outStr)



08-06

  ss = input("날짜(연/월/일) 입력하시오 : ")

ssList = ss.split('/')

print("입력한 날짜의 10년 후는 : ")
print("%s년 " % ssList[0], end='')
print("%s월 " % ssList[1], end='')
print("%s일 " % ssList[2])



08-07

-> 대소문자 변환 프로그램


  inStr, outStr = "", ""

inStr = input("문자열을 입력하세요 : ")

for i in range(0, len(inStr)):
ch = inStr[i]
if ord("A") <= ord(ch) <= ord("Z"):
newCh = ch.lower()
elif ord("a") <= ord(ch) <= ord("z"):
newCh = ch.upper()
else :
newCh = ch
outStr += newCh

print("대소문자 변환 결과 : %s" % outStr)



문자열 관련 함수 연습

  
ss = "Python is Easy."

print(ss.upper())
print(ss.lower())
print(ss.title())
print(ss.swapcase())

##참조는 하지만 계속 이용x
##계속 이용하려면 다음과 같이 이용
upper = ss.upper()
print(upper)


print("-----함수 연습-----")

##찾을 문자열이 몇 개 들었는지 개수를 센다
print(ss.count('s'))

##찾을 문자열이 몇 번째 위치하는지 찾는다
print(ss.find('is'))
print(ss.index('is'))
print(ss.find('없다'))

##찾을 문자열의 위치를 오른쪽(뒤)부터 찾는다.
print(ss.find('E', 7))
print(ss.index('E', 7))

##찾을 문자열로 시작/끝나면 True,False 반환
print(ss.startswith('Python'))
print(ss.endswith('Python'))