📂 변수
- Python에서는 변수에 값을 저장하여 출력할 수 있음
( 파이썬은 사실 변수의 값이 저장된 메모리 위치를 출력하는 하는 것 )
- 변수는 자료형, 숫자형 등 모든 형태 지정이 가능함
name = "쿠키" # name 변수에 '쿠키' 문자 저장
num = "3000" # num 변수에 3000 숫자 저장
- 변수 정의 다음 행 부터 값이 출력 됨. (변수에 다른 값을 업데이트 하면 업데이트된 값으로 출력 된다 )
- 변수는 연산도 가능함
num= 2+3*4
print(num) #14 출력
num= num+2 #16 출력
num +=2 #18 출력 ( 위 연산이랑 동일한의미, 더 간략하게 나타낼수있음)
num*=2 #36 출력
📂문자열 (String)
- 문자열은 ' ' or " " 로 감싸 줘야 함 ( 생략시 변수 이름으로 인식 됨 )
- 문자열 연결은 + or , 로 연결 가능 (단, 서로 다른 형일 경우 형태 변환 후 연결 )
name = “쿠키”
age=30
print ( "그집의 주인은" + name + str(age) + " 인가요?")
# age는 숫자 이기 때문에 name과 연결 불가 str 함수로 문자형으로 변환 후 연결
📂문자열 (Boolean)
- 불리안은 True or False 로 출력하는 논리 연산식
a = 3<11
b= 5<1
print (a ) # True 출력
print(b) # False 출력
📂슬라이싱 ( 문자열 추출/자르기)
- 저장 된 문자열에서 필요한 문자만 추출 할 수 있음.
- 문자열은 순서가 있음 = 인덱싱 가능
- 인덱스는 왼쪽 0 부터 넘버링 & 오른쪽은 -1 부터 넘버링
- 변수 [ : ] 는 전부 출력 됨 (복사 개념)
# 기본 : 변수 [시작 인덱스:끝 인덱스]
jumpin = '900914-1254865'
print ("생년월일: " + jumpin[:6] ) # 처음부터 6직전 까지(~5번째까지) + 0부터 시작이니까 6개 출력
print("연" + jumpin[0:2]) # (0,1) 출력
print("뒤 7자리( 뒤에부터): " +jumpin[-7:])
# 우측부터는 -1부터 넘버링됨
# 맨 뒤에서 7번째 까지 가져오라는 말 = 즉, 주민번호 뒷자리 7자리가 가져와짐
- 특정 문자 기준으로 쪼갤 수도 있음
- SPLIT 활용 : 전체 출력 & 부분 출력
email ='cookiki@gmail.com'
result1 = email.split('@') # 이메일을 @ 기준으로 쪼개줘
result2 = email.split('@')[0] # 이메일을 @ 기준으로 쪼개줘
print(result1) # 자른 후 전체 출력 [cookiki , gmail.com] 출력됨
print(result2) # 자른 후 일부 출력 [cookiki] 출력됨 (index[0]은 첫번째 문자)
- split 함수 실습 & 연습 문제
▷ 실습1. 문자열 내 '@' 기준으로 자른 후 전체 출력


▷ 실습2. '@' 기준으로 자른 후 구간 별 출력 : [0] 부터 첫 구간 출력




▷ 실습3. '@' 와 '.' 두가지 기준으로 자른 후 출력 하기 : 한번 더 스플릿 연결해주고 추출

▶ 연습문제 1. 전화번호에서 지역 번호만 추출 → split 함수 활용

▶ 연습문제 2. 문자열의 특정 문자만 추출→ 슬라이싱 인덱스 활용

📂리스트 (List)
- 리스트 : 순서가 있는 자료형들의 집합 [a,b,c... ]
- 리스트 길이는 리스트안에 값의 갯수를 의미 : len 함수 사용
- 순서가 있으므로 슬라이싱 가능
a = [1, 5, 2] # 기본 형태
b = [3, "a", 6, 1] # 숫자, 문자 관계 없이 저장 가능
c = [] # 빈 리스트를 저장할 수도 있음.
d = [1, 2, 4, [2, 3, 4]] # 리스트 안에 리스트 중첩 가능
print (len(a)) #3 출력
print (a[0]) # 1 출력
print (b[2:]) # a,6,1 출력
print (d[3]d[1]) # 3출력
#중첩 리스트 값 출력하기 : 변수d에 4번째 값에 있는 리스트의 2번째 값 출력
# 인덱스 0 부터 시작이기 때문 d[3] 면 4번째, d[1] 이면 2번째임
🔥DEVELOP🔥
1. 리스트 값 추가 하기
# 1. 리스트 값 추가 하기 (단일값)
a = [1, 2, 3]
a.append(5)
print(a) # [1, 2, 3, 5]
# 1. 리스트 값 추가 하기 (다중값)
a += [2, 7]
print(a) # [1, 2, 3, 5, 2, 7]
2. 리스트 값 정렬 하기
# 2. 리스트 값 정렬 하기
a = [2, 5, 3]
a.sort() # 오름차
print(a) # [2, 3, 5]
a.sort(reverse=True) # 내림차
print(a) # [5, 3, 2]
3. 리스트 값 확인 하기
# 3. 리스트안에 들어있는 값 확인하기
a = [2, 1, 4, "2", 6]
print(1 in a) # True
print("1" in a) # False
print(0 not in a) # True
📂딕셔너리 (Dictionary)
- 딕셔너리는 리스트 값이 키 와 밸류 쌍으로 이루어진 자료형의 집합 {key1 : value1}, { key2 : value2 }, { }…
- 밸류값은 모든 자료형 저장가능
- 딕셔너리는 순서 없음 → 인덱싱 불가
- 빈 딕셔너리 가능 : { } or dict( )
- 값(밸류) 추가및 변경 가능
person = {"name":"Bob", "age": 21} # 기본 형태
print(person["name"])
person = {"name":"Bob", "age": 21}
# 값 변경하기
person["name"] = "Robert" # name에 저장된 값을 Bob → Robert 로 바꾸기
print(person) # {'name': 'Robert', 'age': 21}
# 값 추가하기
person["height"] = 174.8 #딕셔너리에 'height' : 174.8 추가하기
print(person) # {'name': 'Robert', 'age': 21, 'height': 174.8}
🔥DEVELOP🔥
▶ List & dictionary 활용
-리스트 안에 딕셔너리를 저장후 인덱싱 사용 → 자료 정리에 쓰일 수 있음
people = [{'name': 'bob', 'age': 20}, {'name': 'carry', 'age': 38}] #리스트 안에 딕셔너리 중첩
print(people[0]['name']) # 'bob'출력 : 1번째 배열에 name키 값(밸류) 출력
print(people[1]['name']) # 'carry'출력 : 2번째 배열에 name키 값(밸류) 출력
▶ 리스트&딕셔너리 활용 연습 문제
# smith 의 math 점수 출력
people = [
{'name': 'bob', 'age': 20, 'score':{'math':90,'science':70}},
{'name': 'carry', 'age': 38, 'score':{'math':40,'science':72}},
{'name': 'smith', 'age': 28, 'score':{'math':80,'science':90}},
{'name': 'john', 'age': 34, 'score':{'math':75,'science':100}}
]
print(people[2]['score']['math']) #smith 는 3번째 딕셔너리에 있고, score & math 키의 밸류는 80 출력

'PYTHON' 카테고리의 다른 글
파이썬 | 리스트 안의 값 집계 하기 / 반복문에서 range 함수 활용 하기 (0) | 2024.11.22 |
---|---|
파이썬 | 오류 메시지 해석하기 (1) | 2024.11.22 |
파이썬 | 예외 처리(EXCEPT) / 다른 파일 값 참조 및 가져오기(FROM - IMPORT) / IF,FOR 문 한 줄로 쓰기 (삼항 연산자) (0) | 2024.11.21 |
파이썬 | 튜플(TUPLE) / 집합 (SET) / F-STRING 사용하기 (1) | 2024.11.20 |
파이썬 | 조건문(IF) / 반복문(FOR) / 함수 정의하기(DEF) (1) | 2024.11.19 |