02 파이썬 프로그래밍의 기초, 자료형
숫자형, 문자열
02-1 숫자형( Number )이란
- 숫자형태로 이루어진 자료형으로, 우리가 이미 잘 알고 있는 정수, 실수 복소수, 8진수, 16진수 등이 있다.
내장함수, real, imag, conjugate, ads, 실수, 허수, 켤레복소수, 절대값
숫자형 자료형은 사칙연산을 기본으로 수행하고 3개의 연산자를 더 사용할 수 있다.
Python2.7은
정수형끼리
나눌 경우 정수로만 결과값을 리턴하기 때문에 피연산자를 실수형태로 강제 변환해줘야 실수형태의 결과 값이 나온다.
Python 3은
피연산자를
실수형태로
변환하지 않아도 실수형태의
결과 값이 나온다.
02-1 문자열( String ) 자료형이란
- 문자, 단어 등으로 구성된 문자들의 집합이다. 따옴표로 둘러싸여 있으면 모두 문자열이라고 보면 된다.
- 문자열 안에 작은따옴표나 큰따옴표의 사용
1.문자열
안에 작은따옴표를 넣을 때는 문장 양끝에 큰따옴표를,
큰따옴표를 문자열 안에 넣을 때는 작은 따옴표를 문장 양끝에 붙여주면 된다.
2.작은따옴표를
문자열 안에 사용할 때는 이스케이프 코드 \’
를 삽입, 큰따옴표를
사용할 때는 \”를 따옴표를 넣을 위치에 적어준다.
- 여러 줄인 문자열을 변수에 대입하고 싶을 때는 이스케이프 코드 '\n'를 삽입하거나 연속된 따옴표를 문장 양끝에 붙여준다.
이스케이프 코드란?
- 프로그래밍할 때 사용할 수 있도록 미리 정의해 둔 문자 조합이다.
Tip. 파란색으로 표시된 부분이 가장 많이 사용된다. |
| |
문자열 연산하기
문자열 인덱싱 & 슬라이싱
-Python은
숫자를 0부터
센다!
-문자열 내의 특정한 값을 뽑아내는 역할이다.
-번호 자리에 정수형변수가 올 수 있다.
-문자열을 뒤에서부터 읽기 위해서는 번호 앞에 – 를 붙이면 된다.
0과
-0은 같이 때문에 문자열의 맨 뒤의 인덱스는 [-1]이 된다, 간단히
생각해서 문자열의 인덱스는
앞으로
셀 때는 0부터, 뒤로
셀 때는 1부터 센다고 생각하면 된다.
-슬라이싱의
경우 시작 번호를 생략하면 문자열의 처음을 의미하고,
끝 번호를 생략하면 문자열의 끝을 의미한다. 양쪽을 다 생략하면 문자열 전체를 뽑아낸다.
-문자열은 인덱스를 가지긴 하지만 요소 값을 바꿀 수 없음으로 인덱스를
이용한 문자열 안의 문자변경은
불가능하다.
문자열 포매팅( Formatting )
- 문자열 내의 특3정한 값을 바꿔야 할 경우가 있을 때 이것을 가능하게 해주는 기능, 쉽게 말해서 문자열 내에 어떤 값을 삽입하는 방법이다.
- 포멧팅은 숫자, 문자열, 숫자 값을 나타내는 변수로 대입가능하고 2개 이상의 값을 동시에 넣을 수도 있다.
- 문자열 내의 포매팅 표현 방법
포맷코드 사용 예시
1. 숫자에 바로 대입 >>> "I eat %d apples." %3 'I eat 3 apples'
4. 두개 이상의 값 넣기 >>> number=10 >>> day="three" >>> "I ate %d apples. so I was sick for %s days." %(number, day) 'I ate 10 apples. so I was wick for three days.'
7. 정렬과 공백 >>> "%10s" %"hi" ' hi' >>> %-10sjane." %"hi" 'hi jane.' >>>%-10s" %"hi"
'hi '
|
| 2. 문자열 바로 대입 >>> "I eat %s apples." % "five" 'I eat five apples.'
5. %s는 자동으로 % 뒤에 있는 값을 문자열로 바꾸기 때문에 어떤 형태의 값이든 변환해 넣을 수 있다. >>> "I have %s apples." %3 'I have 3 apples' >>> "rate is %s" %3.234 'rate is 3.234'
8. 소수점 표현하기 >>> "%0,4f" %3.42134234 '3.4213' >>> "%10.4f" %3.42134234 ' 3.4213' |
| 3. 숫자 값을 나타내는 변수로 대입 >>> number=3 >>> "I eat %d apples." %number 'I eat 3 apples.'
6. 포매팅 연산자 %d와 %를 같이 쓸 때는 %%%를 쓴다. >>> "Error is %d%%." %98 'Error is 98%.'
|
|
| 1. 숫자에 바로대입 >>> 'I eat {0} apples" .format(3) 'I eat 3 apples'
4. 두개 이상의 값 넣기 >>> number=10 >>> day="three" >>> "I ate {0} apples. so I was sick for {1} days." .format(number, day) 'I ate 10 apples. so I was wick for three days.'
7. 정렬 (왼쪽, 오른쪽, 가운데) >>> "{0:>10}" .format("hi") ' hi' >>> "{0:<10}" .format("hi") 'hi ' >>> "{0:^10}" .format("hi") ' hi '
|
| 2. 문자열 바로 대입 >>> "I eat {0} apples." .format("five") 'I eat five apples.'
5. 이름으로 넣기 >>> "I ate {num} apples. so I was sick for {day} days." .format(num=10, day=3) 'I ate 10 apples. so I was wick for three days.'
8. 공백 채우기, { 또는 } 문자 표현하기 >>> "{0:=^10}" .format("hi") '====hi====' >>> "{0:!<10}" .format("hi") 'hi!!!!!!!!'
>>> "{{ and }}" .format() '{ and }' |
| 3. 숫자 값을 나타내는 변수로 대입 >>> number=3 >>> "I eat {0} apples." .format(number) 'I eat 3 apples.'
6. 인덱스와 이름을 혼용해서 넣기 >>> "I ate {0} apples. so I was sick for {day} days." .format(10, day=3) 'I ate 10 apples. so I was wick for three days.'
9. 소수점 표현하기>>> y=3.42134534
>>> "{0:0.4f}" .format(y) '3.4213' >>> "{0:10.4f}" .format(y) ' 3.4213' |
|
|
문
문자열의 인덱스 항목들이 format 함수의 입력값들로 순서에 맞게 바뀐다
문자열 관련 함수들