주의! 이 글은 코딩을 처음 시작하는 사람 입장에서는 이해가 되지 않을 것입니다.
적어도 하나의 언어에 대해서 잘 아는 사람 입장에서 함수만 정리한것입니다.
1. 리스트 (list)
리스트는 c, java하는 사람들이 흔히 아는 배열과 같습니다.
그러나 가변배열이죠, 여러 자료들의 값을 담을수 있는 자료형입니다.
[] : 빈리스트
nums = [1,2,3,4,5]
인덱싱은 리스트내에 특정 위치의 자료를 지정하는 것입니다.
c,java와 다른 점은 역방향으로 인덱싱을 할 수 있다는 것인데요, 맨뒤가 -1로 시작합니다.
슬라이싱은 리스트 내 특정위치의 자료를 끊어오는 것입니다
형식 : [시작:끝:간격]
시작, 끝 , 간격등을 생략하면 기본 값이 됩니다.
- nums[:] : 다 생략한 형태. 처음을 시작으로 맨 끝까지 기본간격(1)으로 가져온다. 원래 배열과 완전히 같습니다.
- [1 , 2 , 3.14 , 4 , 5]
- nums[0:2] : 인덱스 0부터 2 이전까지 이므로 0,1인덱스가 나옵니다 [ 1 , 2 ]
- nums[::2] : 처음부터 끝까지 2간격으로 [1 , 3,14 , 5]
- nums[:-1] : 처음부터 인덱스가 -1인것 전까지(끝) [1 , 2 , 3.14 , 4] (-1에 해당하는것은 5이다.)
- nums[::-1] : 전체 리스트에서 간격이 -1이입니다. 즉 역방향 리스트를 만듭니다.
리스트 함수 모음
- len(list) : 리스트 크기를 반환 (java와 다름!)
- list.append(x) : 맨뒤에 x를 리스트에 추가
- list.sort() : 오름차순 정렬
- list.sort(reverse = True) : 내림차순 정렬
- list.index(x) : 리스트에서 요소 x를 찾아서 인덱스를 반환
- list.remove(x) : 리스트에서 처음나오는 x를 삭제
- list.pop() : 맨마지막 요소 반환후 삭제
- list.count(x) : x가 몇개 있는지 반환합니다
- list1.extend( list2 ) : 리스트 두개를 이어붙임
2. 튜플 (tuple)
리스트와 유사하지만 수정할수 없는 자료형이고 , 인덱싱 , 슬라이싱은 리스트와 동일합니다.
() : 빈 튜플
color = ("red" , "green" , "blue")
3.딕셔너리 (dict)
key , value 형태의 자료를 담을 수 있는 자료형으로 해싱함수를 이용해 접근합니다.
리스트 = 배열 , 딕셔너리 = 해쉬맵
{} , dict() : 빈 딕셔너리
d = {key : value , key : value .....}
d['key'] = 3 : 새로운 값 추가 또는 key에 대해서 value 수정
key in dic : 딕셔너리안에 key가 있는지 여부를 반환
딕셔너리 함수들
- d.keys() : 딕셔너리 d의 모든 키들을 모은 dict_keys를 돌려줍니다
- 추가적으로 list = list(dict_keys) 해주면 리스트로 바꾸기 완료!
- d.values() : 딕셔너리 d의 모든 value들을 모아놓은 dict_values를 돌려줌
- 추가적으로 list = list(dict_values) 해주면 리스트로 바꾸기 완료!
- d.items() : 딕셔너리의 모든 (key , value) 튜플을 모아놓은 dic_items를 돌려줍니다
- d.clear() : 초기화
- d.get(key) : 키에 알맞는 value를 가져옵니다.
4. 문자열 관련 함수
문자열은 리스트와 인덱싱과 슬라이싱 방법은 동일하지만 string[3]= ' k' 처럼 변경은 할수 없습니다.
문자열 포맷팅 함수
{인덱스:형식} 형식자는 c언어 , java printf함수와 동일합니다
"{0:s} , {1:3f}".format('height' , 1.3)
=====> height , 1.3
문자열 관련 함수들
- str.upper() : 전부다 대문자로 / str.lower() 전부다 소문자로
- str.find(x) : str중 x와 처음으로 일치하는 문자를 반환합니다. 없으면 -1
- str.replace(s ,r)
- str.split() : 공백으로 전부 나눠서 리스트로 반환
- str.split(s) : s구분자로 전부 나눠서 리스트로 반환
사실 이 함수들은 일부일 뿐이고 문자열은 리스트관련 함수를 상당 수 공유합니다.
반응형
'알고리즘 PS (백준) > 🐍 Python (파이썬)' 카테고리의 다른 글
[파이썬 python] Matplot 설치 및 활용 (데이터 시각화 , 그래프) (2) | 2022.06.19 |
---|---|
[파이썬 python] Pandas 설치 및 활용 (데이터 프레임) (0) | 2022.06.07 |
[파이썬 python] : numpy 설치 및 활용 (배열 , 수학/행렬연산 , 코싸인 유사도) (0) | 2022.06.02 |
[파이썬 python] 클래스 (객체 , class) 만들기 (0) | 2022.06.02 |
[파이썬 python] 파일 입출력 , csv 파일 읽기 + (기상,지하철 데이터 분석) (0) | 2022.06.01 |
댓글