점프 투 파이썬 참고
https://wikidocs.net/12
https://wikidocs.net/13
https://wikidocs.net/14
자료형
숫자, 문자열, 불(참,거짓), 변수, 리스트, 튜플, 딕셔너리, 집합
변수 👉 값을 담는 상자
a = a + 1
오른쪽에 있는 값을 왼쪽 변수(상자)에 넣는다
정수형(int) (1,2,-2)
실수(float) (13.24, -4.672)
print(type(a)) 👉 type 볼 수 있음
사칙연산
a = 3
b = 4
print(a + b)
print(a * 3)
print(a / b)
print(a // b) 몫
print(a % b) 나머지
print(a ** b) 제곱
'hello'
"hello"
'''hello'''
"""hello"""
a = 'Python's favorite food is perl' 오류남
'앞에 백슬래시 사용
a = 'Python\'s favorite food is perl'
줄바꿈 (백슬래시 + n)
a = 'Life is too short\nYou need python'
여러 줄로 이루어진 문자열 (''' 또는 """ 사용)
a = """Life is too short
You need python"""
문자열 더하기
a = "Python"
b = " is fun!"
print(a + b) 👉 Python is fun!
문자열 곱하기
a = "Python"
print(a * 3) 👉 PythonPythonPython
a[0] 첫 번째 텍스트 (0부터 시작)
a[-1] 제일 마지막 텍스트 (뒤에서부터 순서대로)
a = "Life is too short, You need Python"
print(a[0:4]) 👉 Life
a[ : : ]
이상 미만 간격(기본값 1)
a[:8] 👉 앞에 0 생략가능. 처음부터 시작
a[4:] 👉 뒤에 -1 생략가능. 끝까지 포함
a[:] 👉 앞 뒤 생략 시 전체, 처음부터 끝까지
a = '12345678'
a[::-1] 👉 87654321 뒤로 읽는 거
a[::-2] 👉 7531 (뒤에서부터 두 칸씩)
문자열 포맷 코드
%s 문자열(String)
%d 정수(Integer)
⭐️ %s는 자동으로 % 뒤에 있는 값을 문자열로 바꿔줌
a = "I eat %d apples." % 3
print(a)
👉 I eat 3 apples.
🔹 format 함수를 사용한 포매팅
a = "I eat {0} apples".format(3)
print(a)
👉 I eat 3 apples
name = "nana"
a = "I eat {} apples".format(name)
print(a)
👉 I eat nana apples
a = "I eat {name} apples".format(name="nana")
👉 I eat nana apples
a = "%0.4f" % 13.42134234
print(a)
👉 13.4213
🔹 f-string
파이썬 3.6 버전 이상에서만 지원하는 방법
string 앞에 f를 쓰고 그 다음에 변수의 이름을 { }로 감싸준다.
def say_hello(name, age):
return f"Hello {name} you are {age} years old"
result = say_hello("nana", "4")
print(result)
👉 Hello nana you are 4 years old
format 함수와는 다르게 정수끼리의 산술 연산도 지원
a = 2
b = 3
test = f'sum: {a+b}'
print(test)
👉 sum: 5
📕 f-string이 가장 빠르다.
문자열 자료형은 자체적으로 함수를 가지고 있다. 이들 함수를 다른 말로 문자열 내장 함수라 한다. 이 내장 함수를 사용하려면 문자열 변수 이름 뒤에 ‘.’를 붙인 다음에 함수 이름을 써주면 된다. 이제 문자열의 내장 함수에 대해서 알아보자.
✅ find (위치 반환)
a = "hobby"
print(a.find('b'))
👉 2
문자열 중 문자 b가 처음으로 나온 위치를 반환한다. 만약 찾는 문자나 문자열이 존재하지 않는다면 -1을 반환한다.
if문이랑 결합해서 많이 쓰임
✅ join (문자 사이에 삽입)
print(','.join('abcd'))
👉 a,b,c,d
'abcd' 문자열의 각각의 문자 사이에 ' , '를 삽입한다.
문자열뿐만 아니라 리스트나 튜플도 입력으로 사용할 수 있다.
리스트나 튜플을 입력하면 문자열 자료형으로 바뀌어서 출력되는 듯
print(['a', 'b', 'c', 'd']) ⬅️ 리스트 자료형
👉 ['a', 'b', 'c', 'd']
print(",".join(['a', 'b', 'c', 'd'])) ⬅️ join 함수 사용
👉 a,b,c,d
c = ['Life', 'is', 'too', 'short']
print("!".join(c))
👉 Life!is!too!short
✅ replace (문자열 바꾸기)
a = "Life is too short"
result = a.replace("Life", "Nana's tail")
print(result)
👉 Nana's tail is too short
replace 된 값을 다른 곳에서 쓰고 싶으면 변수에 저장하기
위에서는 result 라는 변수에 저장함
replace는 값을 반환을 안 해줘서
print(a)로 하면 Life is too short 나옴
a = "Life is too short"
print(a.replace("Life", "Nana's tail"))
👉 Nana's tail is too short
✅ split (문자열 나누기)
a = "Life is too short"
print(a.split())
👉 ['Life', 'is', 'too', 'short']
Mutable Sequence (값을 변경할 수 있음)
리스트 = 변수 여러 개를 묶는 역할
변수 관리를 편하게 할 수 있음
a = [1, 2, ['Life', 'is']]
print(a[2][1])
👉 is
리스트 안에 리스트 안에 리스트 넣을 수도 있고 무한으로 가능
a = [1, 2, 3, 4, 5]
a[0:2] = []
print(a)
👉 [3, 4, 5]
end=' '
⬅️ 한 줄에 이어서 출력
end='\n'
⬅️ 다음 줄에 출력
end='\t'
⬅️ tab이 들어감
print('딱따구리', end=' ')
print('바다거북', end='\t')
print('사막여우', end='\n')
print('어린왕자')
👉
딱따구리 바다거북 사막여우
어린왕자
✅ append (항목 추가)
s.append(x)
시퀀스(sequence)의 끝에 x를 추가합니다.
✅ clear (모든 항목 제거)
s.clear()
시퀀스(sequence)에서 모든 항목을 제거합니다.
✅ sort (리스트 정렬)
문자의 경우에는 가나다 혹은 abc순
숫자의 경우 크기 순
a = ["보라돌이", "뚜비", "나나", "뽀"]
a.sort()
print(a)
👉 ['나나', '뚜비', '보라돌이', '뽀']
✅ reverse (순서 역방향)
s.reverse()
제자리에서 s(sequence)의 항목들의 순서를 뒤집습니다.