[TIL] 파이썬 개념 정리

Jeong Min·2025년 6월 12일
0

#문자열
#문자열은 따옴표로 표시
my_str='사과' # 변수 할당/ 자료형 활용을 위해서 변수에 저장하는 것.
print(my_str) # 변수에 할당된 자료가 출력
type(my_str) # 변수에 할당된 자료의 유형을 출력

#인덱스 : 자료형을 구성하는 순번 / 첫 번째 인덱스 = 0, 마지막 인덱스 = -1
my_str[1] # '과' 출력 (인덱싱)
my_str[0:1] # '사' 출력 (슬라이싱)

문자열 병합(+)
let='abcd'
let2='1234'

  • let+let2 # abcd1234 출력 (병합)

문자열 대소문자 변환(upper,lower)
let.upper() # 대문자로 변환
let.lower() # 소문자로 변환

문자열 사이 추가(.join)

  • ','.join(let) # a,b,c,d 출력 / let 한글자 마다 ,를 넣어서 출력

문자열 분리(.split)
let= 'ab cd'

  • let.split() # 'ab','cd' 출력 / 공백을 기준으로 문자열 분리
    let2= 'ab,cd, ef'
  • let2.split(',') # 'ab', 'cd', ' ef' 출력 / ,를 기준으로 문자열 분리
  • let2.split(', ') # 'ab,cd', 'ef' 출력 / , 를 기준으로 문자열 분리 (공백 포함)

#리스트 : 집합형 자료형
#리스트 정의하는 방법 1. list()를 이용해 정의, 2. []를 이용해 정의

list([1,2,3]) # 1번 방법
list2 = ['abc'] # 2번 방법

특정 순서의 자료 불러오기
a= [1,2,3,4,5]
b= ['a','b','c','d','e']
c= ['a',['b','c'],(6,7,8),9]

a[4] # 5 출력
b[3] # d 출력
c[1] # b,c 출력
c[1][0] # b 출력
c[2] # 6,7,8 출력
c[2][1] # 7 출력

리스트 병합
a+b # [1,2,3,4,5,'a','b','c','d','e'] 출력
b*2 # ['a','b','c','d','e','a','b','c','d','e'] 출력

리스트 길이 구하기(len())
len(a) # 5 출력 / 길이 구하기
len(c) # 4 출력

리스트 수정
a=[1,2,3,4,5]

  • a[2]= 50 # 1,2,3,4,5 > 1,2,50,4,5 로 변경/ 리스트 수정

리스트 삽입(.insert)
a=[1,2,3,4,5]

  • a.insert(3,40) # 3번째 인덱스에 40 삽입
  • a # 1,2,50,40,4,5 출력

리스트 삭제(del)
a=[1,2,3,4,5]

  • del a[3] # 3번째 인덱스 값 삭제
  • a # 1,2,50,5 출력

리스트 추가(.append)
a=[1,2,3,4,5]

  • a.append(100) # 1,2,3,4,5,100 출력 / 2개 이상 삽입 불가
  • a.append([100]) # 1,2,3,4,5,[100] 출력 / 2개 이상도 삽입 가능

리스트 정렬(sorted VS .sort())
a=[5,3,6,2,1,4]

  • sorted(a) # 1,2,3,4,5,6 으로 정렬되어 출력되지만 리스트가 변경되지는 않음 (내장함수)
  • a.sort() # 1,2,3,4,5,6 으로 정렬되어 출력되고 리스트도 변경됨. (메소드)

리스트 뒤집기(.reverse())
a=[1,2,3,4,5]

  • a.reverse() # 5,4,3,2,1 로 뒤집어서 출력

리스트 특정 문자 삭제(.remove())
a=[1,2,3,4,3,5,3]

  • a.remove(3) # 첫번째로 나오는 3만 삭제돼서 출력

리스트 특정 문자 빼내기(.pop())
a=[1,2,3,4,5]

  • a.pop(1) # 첫번째 인덱스 값을 출력함, 삭제된 값을 보여줌

#튜플 : 요소를 ()로 감싸고 있음. 요소의 생성,삭제,수정이 불가능
a= (1,2,3)
a[0] # 1 출력, 인덱싱
a[1:] #2,3 출력, 슬라이싱

b=(3,4)
b*2 # 3,4,3,4 출력

len(a) # 3
len(b) # 2

#딕셔너리 : key-value 형태의 자료형. {}로 묶여있음
#key : 딕셔너리의 인덱스와 같은 개념, 인덱스로 불러오기는 안되며, 특정 key 값으로 접근해야함
#value : key와 엮여 있는 값

gdp_dict ={'한국':3000,'미국':5000,'일본':4000}

  • gdp_dict['한국'] # 3000 출력

딕셔너리 값 출력
a= {"name":"James","age":27,"city":"jeju"}
a["name"] # name에 맞는 value 출력
a["city"]

딕셔너리 키-값 추가
a["job"] = 'student'
a # job이라는 key, student라는 value 추가

딕셔너리 값 수정
a['age'] = 30 # 나이가 27에서 30으로 수정

딕셔너리 키-값 삭제
del a['city'] # city의 key, value 삭제

!
a.keys() # key 값만 출력
a.values() # value 값만 출력
a.items() # (키,값),(키,값),(키,값) 형태로 출력
a.clear() # 모든 요소 삭제

딕셔너리 키 존재 여부 확인('key' in dict)
a= {"name":"James","age":27,"city":"jeju"}
'job' in a # key 값이 존재하는지 확인. job이라는 키는 없기에 False 출력
'name' in a # name 이라는 키는 존재하기에 True 출력

#Set vs Dictionary
#Set : 중복된 값을 추가하면 변화 없음. 고유한 값의 집합을 관리, 중복제거와 집합 연산에 적합
#Dictionary : 키-값 쌍으로 데이터를 관리하고 데이터 검색 및 매핑관계 저장에 효율적

헷갈릴 만 한 사례
tests= [1,2,3,4,5]
tests1= tests+['apple','banana', 1, 2]
tests1 = [1, 2, 3, 4, 5, 'apple', 'banana', 1, 2] 로 출력

list01 =[{'1':13,'name':142},[102,(1,23),4],(11),{14,'apple'},'!']
list01[1][1] = (1,23) 출력
len(list01) = 5 출력


함수란?

  • 입력을 받아 원하는 처리를 한 후 출력을 내보내는 코드 블록

내장 함수 : 사전에 정의된 함수
사용자 정의 함수 : 내가 필요해서 만든 함수

함수의 구성요소
def 함수이름(매개변수1, 매개변수2):
수행할 코드 1
수행할 코드 2
return 결과값
예시)
def add(a,b):
return a+b

  • return과 print의 차이점
    def add(a, b):
    result= a+b
    return result
    = a+b 값 출력

def add(a,b):
result a+b
print(result)
= a+b 값 None 출력

! return은 함수를 바로 종료시키면서 반환할 값 정의. 지정하지 않으면 None 출력.

! 여러 개의 값 return
반환 값이 여러 개일 경우, 결과형은 튜플 ().

map 함수

  • 데이터 집의 모든 요소에 함수를 하나씩 적용한 결과를 한꺼번에 돌려주는 함수.
    map(function, iterable)
    function : 각 요소에 적용할 함수
    iterable : 함수를 적용할 데이터 집합
    map() 함수는 iterable의 각 요소에 대해 function 함수를 적용한 결과를 새롭게 반환.

0개의 댓글