Frontend 개발자 - hyo.loui
파이썬 기초 문법(1/2) - 변수, 문자열, 리스트, 딕셔너리 본문
❤️🔥TIL : Today I Learned
변수 선언과 자료형
- 변수 ( variable ) 선언
- 파이썬에서 새 변수를 만들 때는 변수이름 = 값 의 형태로 씁니다.
- 변수는 '값'을 가리키는 것'!
- 변수는 '메모리'에 연결되어 있다고 생각하는게 좋습니다!
a = 3 # 3을 a에 넣는다.
print(a)
b = a # a에 들어 있는 값인 3을 b에 넣는다.
print(b)
a = 5 # a에 5라는 새로운 값을 넣는다.
print(a, b) # 5 3
그런데, 여기서 c 의 값은 어떻게 나올까?
a = 3
b = a
c = b
a = 5
b = 4
print(c)
답은 3이다!
왜냐하면
변수를 대입하는 과정은 우리가 자주 하는
'복사' + '붙여넣기' 과정과 비슷하다!
그래서 최종적으로 a = 5 , b = 4 , c = 3 이다
- 숫자형과 자료형
자료형이란 프로그래밍을 할 때 쓰이는 숫자,
문자열 등 자료 형태로 사용하는 모든 것을 뜻합니다!
파이썬에서 어떤 '값'을 쓰는지 알아야 코딩을 할 수 있겠죠?
a = 7
b = 2
a+b # 9
a-b # 5
a*b # 14
a/b # 3.5
a+3*b # 13 (동시 연산을 할 경우 사칙연산의 순서대로!)
(a+3)*b # 20 (소괄호를 이용해 우선 계산할 부분을 표시할 수 있어요!)
- Bool 자료형 - True or False
True 와 False / 참과 거짓
( == js boolean 타입)
a = True
print(a)
a = (3 > 2)
print(a) => True
a = (2 > 3)
print(a) => False
a = (3 == 2)
print(a) => False
문자열 다루기
- 문자열
('')작은따옴표, ("")큰따옴표 : 시작과 끝은 통일!
case 1
#문자 + 문자 = Do it!
first_name = 'Seunghyo'
last_name = 'Lee'
print(first_name, last_name)
a = '2'
b = 'hello'
print(a + b)
위처럼 ,문자와 문자는 서로 합성이 됩니다
case 2
# 숫자 + 문자 = Don't
a = 2
b = 'hello'
print(a + b)
* 오류가 발생해요 *
case 3
# 숫자 + 문자 = Don't
a = 2
b = '2'
print(a + b)
* 오류가 발생해요 *
이번에도 a는 숫자형인 2와, b는 문자열인 '2' 이기 때문에 오류 발생!
case 4
# 문자 + 문자 = Do it!
# 문자 : 연산이 되지 않고 텍스트를 합침
a = '2'
b = str(2)
print(a+b)
+ 추가로 알고가기!
len( ) 이라는 함수인데요~ 유용하고 자주 쓰이는 함수에요
# # len()
# # 문자열의 길이(함수) : js Array.length 와 비슷하다
text = 'abcdefghijklmnopqrstuvwxyz'
result = len(text)
print(result) # 26
- 인덱싱과 슬라이싱
인덱싱은 문자열의 순서를 나타내요!
또 인덱싱으로 해당 텍스트만 자르기를 할 수도 있어요!
== js Array.length[index] (자바스크립트에서 쓰이는 .length 와 같아요)
# 문자열[n] : 0부터 수를 센다
result = 'abcdefghijklmnopqrstuvwxyz'
result = text[1] # b - 인덱싱! 한글자!
# 슬라이싱
result = text[3:8] # defgh - 3-8 까지
result = text[3:] # defghijklmnopqrstuvwxyz - 3에서 끝까지
result = text[:8] # abcdefgh - 시작에서 8까지
result = text[:] # abcdefghijklmnopqrstuvwxyz - 처음부터 끝까지
- 특정 문자열로 자르기
# 특정 문자열로 자르기
# split('')
myemail = 'abc123@naver.com'
domain = myemail.split('@')[1].split('.')[0]
print(domain) # naver
위처럼 우리가 흔히 쓰는 이메일에서도 활용이 가능해요!
- spilt 으로 @ 기준 앞과 뒤를 나누면 ['abc123', 'naver.com']
- 인덱싱으로 뒷 배열을 가져오면 'naver.com'
- 이후 또 다시 split 으로 . 기준으로 나눠주면 ['naver', 'com'] 이겠죠?
- 마지막으로 인덱싱으로 첫번째 배열인 [0]을 가져와주면 naver
리스트와 딕셔너리
- [리스트]
순서가 있는, 다른 자료형 값을 담는 방법
js 와 다른점은 다른 타입도 담겨집니다!
신기하게 리스트 안에 리스트도 들어갈 수 있어요
- 리스트에 덧붙이기
# 리스트
a = [1, 2, 3]
a.append(5) # .append() == 덧붙이기
print(a) # [1, 2, 3, 5]
# '리스트 안에 리스트'도 넣을 수 있네요
a.append([1, 2])
print(a) # [1, 2, 3, 5,[1, 2]]
# a.append(6, 7) don't... 그래서
a += [6, 7]
print(a) # [1, 2, 3, 5, [1, 2], 6, 7]
# + 추가
# 리스트 마지막 출력하기 => [-1]
a_list = [1, 5, 2, 6, 4, 9]
result = a_list[-1]
print(result) # 9
- 리스트 정렬하기
# 리스트 정렬하기
a_list.sort()
print(a_list) # [1, 2, 4, 5, 6, 9]
# 리스트 거꾸로
a_list.sort(reverse=True)
print(a_list) # [9, 6, 5, 4, 2, 1]
# 요소가 리스트 안에 있는지 알아보기
search = (5 in a_list)
print(search) # True
search = (7 in a_list)
print(search) # False
- {딕셔너리}
딕셔너리는 키(key)와 밸류(value)의 쌍으로 이루어진 자료의 모임입니다.
영한사전에서 영어 단어를 검색하면 한국어 뜻이 나오는 것처럼
# 딕셔너리 이름 = {"키(key)":"밸류(value)"}
a_dick = {'name':'hyo', 'age': 26, 'friend':['성범','민수','유민']}
result = a_dick['name']
print(result) # hyo
result = a_dick['age']
print(result) # 26
result = a_dick['friend']
print(result) # ['성범','민수']
result = a_dick['friend'][1]
print(result) # 민수
- 딕셔너리 업데이트, 딕셔너리 확인
# 값을 업데이트하거나 새로운 값을 넣을 수도 있어요!
a_dick['height'] = 180
print(a_dick) # {'name': 'hyo', 'age': 26, 'friend': ['성범', '민수', '유민'], 'height': 180}
# 요소가 딕셔너리에 있는지 확인
search2 = ('height' in a_dick)
search3 = ('weghit' in a_dick)
print(search2) # True
print(search3) # False
'Python' 카테고리의 다른 글
파이썬 심화 문법(1/3) - 튜플, 집합, f-string, 예외처리 (0) | 2022.11.13 |
---|---|
파이썬 기초 문법(2/2) - 조건문, 반복문, 함수 (2) | 2022.11.11 |
프론트엔드와 백엔드 연결 방법? (0) | 2022.11.06 |
파이썬으로 라면 만들기? (0) | 2022.11.06 |
파이썬 'Python' 이 뭐길래... (0) | 2022.11.06 |