파이썬 기본 _ 숫자형, 문자열

2025. 2. 8. 03:11LG U+ why not SW 5/python

파이썬

 

 

 

 

 

a = 1

: a는 1과 같다는 의미가 아니라, ' 1라는 값을 a라는 상자 속에 넣어 준다. 혹은 포함시킨다.' 는 개념.

* a == 1 : a는 1과 같다.

 

 

 

 

문자열

 

 

 

1. 숫자형

 

1) int와 float

 

int() : 정수

float() : 실수

 

 

2) 사칙연산

 

a + b : 덧셈

a - b : 뺄셈

a * b : 곱셈

a ** b : 제곱

a / b : 나누기

a // b : 몫

a % b : 나머지

 

 

 

2. 문자열 자료형 str()

 

1) 문자열 생성

: 문자들의 배열(list)

: 동일한 따옴표로 시작해서 끝나는 지점까지 문자열 생성

: 문자열 중간에 따옴표를 넣는다면, 서로 다른 따옴표 사용,  *3

 

'hello' : 작은 따옴표

"hello" : 큰 따옴표

'''hello''' : 작은 따옴표 * 3

"""hello""" : 큰 따옴표 *3

 

 

2) 문자열 계산

 

_더하기

a = 'hello'

b = 'stranger!'

a + b

>>> 'hello stranger!'

 

_곱하기

a = 'hello'

a * 2

>>> 'hellohello'

 

 

3)  문자열 길이 구하기 : len()

 

a = 'life is too short'

len(a)

>>> 17

*문자열에 공백 포함

 

 

4) 문자열 인덱싱

: 문자를 한글자씩 가져와, 맨 앞 글자가 0부터 번호index를 붙임.

: 맨 처음부터 끝까지 [0]...[n]

: 맨 마지막부터 역순으로 [-1]...[-n]

 

a = "Life is too short, You need Python"
a[3]
>>> 'e'

* a[3]:'e' : 파이썬의 시각

 

 

5) 문자열 슬라이싱

: 문자를 범위를 정해 덩어리째로 가져옴.

: a[0:5] => 0이상 5미만 1칸(기본)씩 간격으로

: a[0:5:2] => 0이상 5미만 2칸씩 간격으로

: a[::2] => 앞에서 2칸씩 간격으로

: a[::-2] => 뒤에서 2칸씩 간격으로

 

a = "20230331Rainy"
date = a[:8]
weather = a[8:]
print('date')
>>> '20230331'
print('weather')
>>> 'Rainy'

 

 

6-1) 문자열 포매팅

: 숫자 대입 : %d

 

"I eat %d apples." % 3
>>> 'I eat 3 apples.'

 

: 숫자를 변수로 대입

 number = 3
"I eat %d apples." % number
>>> 'I eat 3 apples.'

 

: 소숫점 대입 : %f

"I eat %0.4f apples." % 0.12345678
>>> 'I eat 0.1234 apples.'

=> 소숫점 넷째자리까지 표시

 

"I eat %.2f apples." % 0.12345678
>>> 'I eat 0.12 apples.'

=> 소숫점 둘째자리까지 표시

 

: 문자 대입 : %s

: 문자열은 문자와 숫자 모두 수용

"I eat %s apples." % "five"
>>> 'I eat five apples.'

 

"I eat %s apples." % 3
>>> 'I eat 3 apples.'

: 2개 이상의 값 대입

number = 10
day = "three"
"I ate %d apples. so I was sick for %s days." % (number, day)
>>> 'I ate 10 apples. so I was sick for three days.'

 

 

6-2) 문자열 포매팅 format함수

: {0}.format(b)

: 0를 b로 대체

 

: 숫자 대입

"I eat {0} apples.".format(3)
>>> 'I eat 3 apples.'

 

: 숫자를 변수로 대입

number = 10

"I eat {0} apples.".format(number)
>>> 'I eat 10 apples.'

 

: 문자 대입

"I eat {0} apples.".format('five')
>>> 'I eat five apples.'


: 2개 이상의 값 대입

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 sick for three days.'

 

: name=value 값으로 대입

"I ate {number} apples. so I was sick for {day} days.".format(number=10, day='three')
>>> 'I ate 10 apples. so I was sick for three days.'

 

: 혼용

"I ate {0} apples. so I was sick for {day} days.".format(10, day='three')
>>> 'I ate 10 apples. so I was sick for three days.'

 

 

6-2) 가장 간단한 f 문자열 포맷팅

: 포매팅하려는 문자 앞에 f

name = '홍길동'
age = 30
f'나의 이름은 {name}입니다. 나이는 {age}입니다.'
>>> '나의 이름은 홍길동입니다. 나이는 30입니다.'

 

: 딕셔너리 형태로 key:value를 한쌍으로 포맷팅

d = {'name':'홍길동', 'age':30}
f'나의 이름은 {d["name"]}입니다. 나이는 {d["age"]}입니다.'
>>> '나의 이름은 홍길동입니다. 나이는 30입니다.'

 

 

7) 문자열 바꾸기 : .replace()

 a = "Life is too short"
a.replace("Life", "Your leg")
>>> 'Your leg is too short'
=> 'Life'라는 key값에 'Your leg'라는 value를 넣음

 

 

8)문자열 나누기 : .split()

a = "Life is too short"
a.split()
>>> ['Life', 'is', 'too', 'short']

=> 괄호 안의 공백을 기본으로 나눔

 

b = "a:b:c:d"
 b.split(':')
>>> ['a', 'b', 'c', 'd']

 

 

 

 

 

_

교재를 전달 받아 앞부분부터 복습한다는 생각으로 훑는데,

정리를 해 두자니 시간이 제법 걸린다.