딩굴댕굴

Python - 06.연산자2

by jennysgap

BOX

연산자2


* 결과값 = 리턴값 = 반환값
* 정리
bin( 인자 )                : 인자에 정수값을 받아 문자열형으로 변경
str( )                        : 인자에 정수값을 넣어 문자열 리턴
int( )  int( , )            : 문자열형(10진수 숫자값)을 받아서 정수로 리턴, 실수를 넣었을 경우 소수점 없앰, 즉 결과값을 정수로 리턴
float( )                     : 결과값을 실수로 리턴
문자열형.format( )   : 문자열형에 중괄호 {} 안에 넣어 양식을 맞춰주는 것
print( )                    : 모니터 출력

6.1 문자열형 연산

* 문자열형은 숫자형과 + 연산자를 사용할 수 없다.

* str 함수는 문자열형으로 변환해준다.


6.1.1 문자열형 연산 연습

1) 문자열 더해서 연결하기 (Concatenation)

head = "Python"
tail = " is fun!"
print(head + tail)

2) 문자열 곱하기

a = "python"
print(a * 2)

3) 문자열 곱하기 응용

print("=" * 10)
print("My Program")
print("=" * 10)


6.2 문자열 인덱싱

• var[n]으로 한문자를 가리킬 수 있다.

• n을 인덱스 번호라한다.

• 인덱스 번호는 0부터 시작한다. (문자열 왼쪽부터 부여함)

• 인덱스 번호 -를 붙이면 문자열 오른쪽부터 부여한다.

• 최대 인덱스 번호를 벗어나지 않도록 주의

• 문자열 인덱싱으로 값을 변경할 수 없다.

var='hello world'

print(var[0])

print(var[1])

print(var[2])

print(var[3])


var[0]은 h가 출력

var[1]은 e가 출력

var[2]은 l가 출력


6.3 문자열 슬라이싱

• 시작과 끝을 각각 생략할 수 있다.

• var[a:b]는 a <= var < b를 의미한다. 

var='Hello World'

print(var[0:5])

print(var[6:11])


var[0:5]은 Hello가 출력

var[6:11]은 World가 출력


6.4 문자열 포매팅

문자열 포매팅 사용전


name = '홍길동'

age = '22'

msg = name + '의 나이는 ' + age + '살 입니다.'

print(msg)

문자열 포매팅 사용후

name = '홍길동' age = '22' msg = '{}의 나이는 {}살 입니다.'.format(name, age) print(msg)

문자열 포매팅 활용1


str1 = '박지성'

str2 = '이승엽'

str3 = '{}은 야구선수입니다. {}은 축구선수입니다.'

result = str3.format(str1, str2)

print(result)        --> 박지성은 야구선수입니다. 이승엽은 축구선수입니다.


str4 = '{1}은 야구선수입니다. {0}은 축구선수입니다.'

result = str4.format(str1, str2)

print(result)        --> 이승엽은 야구선수입니다. 박지성은 축구선수입니다.

문자열 포매팅 활용2


숫자형 --> (10진수)문자열형

숫자형 --> (8진수)문자열형

숫자형 --> (16진수)문자열형

숫자형 --> (2진수)문자열형


num = 10

strDec1 = '10진수 ' + str(num)

strDec2 - '10진수 {}'.format(num)

strOct = '8진수 {:o}'.format(num)

strHex = '16진수 {:x}'.format(num)

strBin = '2진수 {:b}'.format(num)

print(strDec1)

print(strDec2)

print(strOct)

print(strHex)

print(strBin)

문자열 포매팅 활용3 (숫자형으로 되돌리기)


(10진수)문자열형 --> 숫자형

(8진수)문자열형

(16진수)문자열형

(2진수)문자열형


num = 10 strDec1 = str(num) strDec2 = '{}' .format(num) strOct = '{:o}' .format(num) strHex = '{:x}' .format(num) strBin = '{:b}' .format(num) result = int(strDec1) print(result+1) result = int(strOct, 8) print(result) result = int(strHex,16) print(result) result = int(strBin,2) print(result)

문자열 포매팅 활용4 num = 10 strDec1 = str(num) strDec2 = '{:10}' .format(num)     # 패딩값 10칸 차지, 오른쪽 정렬 strOct = '{:010o}' .format(num)    # 앞 0 값으로 차지 strHex = '{:<10x}' .format(num)    # 왼쪽 정렬 strBin = '{:^10b}' .format(num)    # 가운데 정렬 print(strOct) print(strHex) print(strBin)

• 패딩값 (오른쪽 정렬) 10칸 차지

• 앞에 0을 넣으면 0값으로 차지됨

• < 왼쪽 화살표를 하면 왼쪽 정렬

• ^(캐럿) 가운데 정렬


6.5 문자열 관련 함수들

• 개수 세기  :  .count()

str1 = 'Try hard, Try hard!'
cnt = str1.count('r')
print('r의 개수:', end='')
print(cnt)
cnt = str1.count('Try')
print('Try의 개수:', end='')
print(cnt)

• 위치 찾기  :  .find()

str1 = 'The life is only once.'

idx = str1.find('i')

print('i가 처음 나온 위치:', end='')

print(idx)

idx = str1.find('is')

print('is가 처음 나온 위치:', end='')

print(idx)

• 문자열 조인  :  .join()

str1 = ',' str2 = str1.join(123456789') print(str2) str2 = str1.join('ABCDEFGHI')

print(str2)

str1 = '--'

str2 = str1.join('123456789')

print(str2)

• 소문자를 대문자로 변환  :  .upper

str1 = 'apple'
str2 = str1.upper()
print(str2)

• 대문자를 소문자로 변환  :  .lower

str1 = 'GOOGLE' str2 = str1.lower() print(str2)

• 왼쪽 공백 제거하기  :  


• 오른쪽 공백 제거하기  :  


• 양쪽 공백 제거하기  :  


• 문자열 바꾸기  :  .replace

str1 = 'Life is too short' print(str1) str2 = str1.replace('Life', 'Your leg') print(str2)

• 문자열 나누기  :  






반응형

'BOX' 카테고리의 다른 글

Python - 복습 겸 연습문제 풀기  (0) 2017.01.21
Python - 07.출력과 입력 함수  (0) 2017.01.20
Python - 05.연산자1  (0) 2017.01.19
Python - 04.자료형  (0) 2017.01.19
Python - 03.변수  (0) 2017.01.19

블로그의 정보

jennysgap

jennysgap

활동하기