본문 바로가기

Study/class note

python / 문자열, 이스케이프 문자

033 문자열 이해하기

문자열은 문자나 기호 순서로 나열되어 있는 시퀀스 자료

var1 = 'i am a python programmer'
var2 = """i am a python programmer
        you are also python programmer"""
        
print(var2)

문제128. 스티브 잡스 연설문 전체를 stev라는 변수에 넣으시오.

stev = """ (카페에서 데이터를 다운로드 받아 본문 붙여넣기) """
# 본문 안에 따옴표가 있어도 상관없음. 정제할 필요 없음. 앞뒤로 """가 있기 때문

print(stev)

문제129. 스티브 잡스 연설문 jobs.txt를 c:\\data 밑에 두고 아래와 같이 jobs.txt를 불러오시오

jobs = open("c:\\data\\jobs.txt",encoding="utf8")
print(list(jobs))

encoding="utf8"이란,

인코딩이란 사람이 인지할 수 있는 형태의 데이터를 약속된 규칙에 의해 컴퓨터가 사용하는 0과 1로 변환하는 과정을 말함. utf8로 인코딩을 하면 영문 뿐만 아니라 한국어와 중국어 같은 문자열도 컴퓨터가 이해할 수 있도록 변환해줌.

 

문제130. jobs.txt를 한번에 불러와서 list 함수없이 출력될 수 있게 하시오.

jobs = open("c:\\data\\jobs.txt",encoding="utf8")
data = jobs.read()
print(data)        # 변수data의 type을 찍어보면 str임

read() 함수를 이용하면 파일을 한 번에 불러올 수 있습니다.

변수data의 type을 찍어보면 str임. 따라서 문자열.count('단어')가 가능함.

 

문제131. 스티브 잡스 연설문에는 was라는 단어가 몇 번 나오는지 카운트 하시오.

jobs = open("c:\\data\\jobs.txt",encoding="utf8")
data = jobs.read()
print(data.count('was'))     # 50 출력됨

문제132. 중앙일보 신문사에서 웹스크롤링을 한 기사모음인 mydata3.txt안에 인공지능이라는 단어가 몇 번 나오는지 카운트 하시오.

mydata3 = open("c:\\data\\mydata3.txt",encoding="utf8")
data = mydata3.read()
data.count('인공지능')    # 24

 

 

034 문자열 포맷팅 이해하기

문자열 포맷팅이란 변하는 값을 포함하는 문자열을 표현하기 위해 하나의 양식으로 문자열을 만드는 것.

문자열 포맷팅에서는 변하는 값을 나타내기 위해 기호를 '포맷 문자열'이라고 하며, 자주 사용하는 포맷 문자열은 다음과 같음.

포맷 문자열 설명
%s 문자열에 대응됨
%c 문자나 기호 한개에 대응됨
%f 실수에 대응됨
%d 정수에 대응됨
%% % 기호자체를 표시

예제. 아래의 변수를 이용해서 아래와 같이 결과가 출력되게 하시오.

num1 = 5

num2 = 10

결과 : 5는 10보다 작습니다.

num1 = 5
num2 = 10
print('%d는 %d보다 작습니다' %(num1,num2))

문제133. 다음의 SQL을 파이썬으로 구현하시오.

-- SQL
select ename || '의 월급은 ' || sal || '입니다'
 from emp;
# 파이썬
import csv

file = open("c:\\data\\emp5.csv")
emp_csv = csv.reader(file)

for i in emp_csv:
    print('%s의 월급은 %d 입니다.' %(i[1],int(i[5])))
    # print('{0}의 월급은 {1} 입니다.'.format(i[1],int(i[5])))
    # print(f'{i[1]}의 월급은 {i[5]} 입니다.')

 

 

035 이스케이프 문자 이해하기

이스케이프 문자는 키보드로 입력하기 어려운 기호를 나타내기 위해 역슬래쉬 '\'로 시작하는 문자임. 파이썬에서 자주 사용되는 이스케이프 문자는 다음과 같음.

이스케이프 문자 설명
\n 줄바꾸기
\t
\엔터 줄계속
\\ 역슬래시 기호 자체(\)
\' 또는 \" ' 기호 자체 또는 " 기호 자체

예제. 커피메뉴판 

print('1번 : 아메리카노 (1500원) \n2번 : 카페라떼 (2500원) \n3번 : 카페모카 (3500원) ')

문제134. 위의 메뉴판을 아래와 같이 출력되게 하시오.

print('1번 : \"아메리카노\" (1500원) \n2번 : 카페라떼 (2500원) \n3번 : 카페모카 (3500원) ')

 

반응형