Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- KT에이블스쿨
- Python #파이썬 #판다스 #pandas #선형보간법 #결측치처리
- 파이썬 #python #리스트 #리스트 컴프리헨션 #딕셔너리 #메소드
- 머신러닝 #ML #copysheet # ML copysheet #머신러닝 copysheet
- 하이퍼파라미터 최적화
- KT에이블스쿨 #DX #DX 3기 #후기 #기자단 #에이블 기자단
- python #pandas #판다스 #파이썬 #DataFrame #데이터탐색 #데이터 조회 #데이터 집계 #jupyter lab #jupyter notebook
- 32회 #ADsP #데이터분석준전문가
- batch normalization
- ADsP #데이터분석준전문가
- IT 인프라 #서브넷 #7계층 #OSI #TCP #IT Infra
- KT에이블스쿨 #aice합격후기 #aice associate # aivle합격
- 파이썬 #python #numpy #array #배열 #인덱싱 #슬라이싱
- python #파이썬 #판다스 #pandas #가변수화 #get_dummies #범주화
- cnn #keras #딥러닝 # EarlyStopping #
- ADsP #데이터준전문가
- KT에이블스쿨 #에이블 #DX #3기
- argmax #다중분류
- Auto ML
- 파이썬 # python # 이변량분석 # 단변량분석 # 시각화 # 수치화
- Image Data Augmentation #
- KT에이블스쿨 3기 #DX과정 #인적성 #
- 에이블후기
- KT #kt #kt에이블스쿨 #DX #kt aivle 3기 # kt aivle dx # DX후기
- 파이썬 #python #함수 #내장함수 #예외처리
- randomsearch
- Softmax
- 파이썬 #python #class
- 파이썬 #python #DataFrame #pandas #판다스
- kt에이블 스쿨 #kt #공모전 #DX 후기 # DX 3기 # kt 에이블스쿨 DX 3기 # kt 에이블스쿨 3기
Archives
- Today
- Total
파이썬 하는 파이리
Python_리스트 자료형 + 유용한 반복문 본문
1. 리스트 슬라이싱(Slicing)
- 인덱스(index)를 사용하여 특정 범위의 요소를 찾는 과정
- a[m,n]의 형태
- m번쨰부터 n-1까지
# 리스트 만들기
member = ['가', 85, '나', 95, '다', 90,' 라', 75]
# 슬라이싱
print(member[:2])
print(member[-4:-2])
print(member[3::-1]) #거꾸로 가져오기
2. 리스트에 자주 사용되는 메소드
- append() : 맨뒤에 요소를 하나 추가(리스트를 추가하는것도 가능 리스트 내 요소결합X)
- ex) a.append(5) , a.append([7,8])
- insert(위치,값) : 원하는 위치에 요소를 추가하기
- ex) a.insert(2,30) => 2번째 자리에 30일 넣는다. 기존 2번째 요소는 오른쪽으로 밀림
- extend() : append에 리스트를 추가하면 요소로 리스트가 들어가는것과 달리 리스트끼리 결합하는 메소드
- ex) a.extend([5,6,7,8])
- count() : 요소의 개수 확인
- index(): 요소의 위치 조회
- sort() : 오름차순 정렬
- sort(reverse=True) : 내림차순 정렬
- reverse() : 요소 뒤집기
- remove(특정값) : 특정값(요소) 삭제
- pop(위치) : 위치에 있는 요소 삭제 미입력시 마지막 요소부터 삭제
- clear() : 모든요소 삭제
3. 리스트 복사
- 리스트=리스트는 완벽한 복사가 아니다...?
- 완전한 복사는 한 쪽에서의 변경이 다른쪽에 영향을 주지 않아야 한다.(범위를 지정해서 복사)
- 뭔소리냐? 코드로 확인
# 리스트 복사
a = list(range(10))
copy1 = a # 그냥 복사
copy2 = a[:] # 전체 범위를 지정하여 복사
# 리스트의 id 확인
print(a, id(a))
print(copy1,id(copy1))
print(copy2,id(copy2)) #id가 다르다. 영향을 받지 않는다=>완전한 복사
# copy1의 첫번째 값 변경 후 원본과 비교
copy1[0] = 'hi'
# 확인
print(copy1)
print(copy2) #리스트 요소가 변경 되지 않은걸 확인 영향 받지 않았다 => 완전한 복사
print(a)
4. 리스트 컴프리헨션
- 반복문의 코드가 매우 간결해지는 파이썬 스타일 코드
- 반복문 + 조건문 코드를 한줄로 간편하게 작성가능.
# 리스트 만들기
a = [0, 1, 2, 3, 4]
# 리스트컴프리헨션
squares = [x**2 for x in a ]
# 확인
print(squares)
- 반복문+조건문
my_nums = [10, 22, 30, 41, 56, 60, 71, 80, 90]
# my_nums 리스트에서 10의 배수만을 뽑아 그 값을 10으로 나눈 몫을 갖는 새로운 리스트 만들기
new_nums = [x//10 for x in my_nums if x%10==0 ]
# 확인
print(new_nums)
5. 딕셔너리와 for 문
- 딕셔너리로 반복문 돌릴때 key와 value를 반환해주는 items()메소드
score = {'갑': 85, '을': 95, '병': 90}
for k,v in score.items():
print(f'{k}: {v}')
- 리스트 컴프리헨션을 활용
score = {'갑': 85, '을': 95, '병': 90}
score_over_90 = {k: v for k, v in score.items() if v > 90}
# 확인
score_over_90
6. 리스트와 enumerate()함수
- 문자열이나 컨테이너 자료형을 입력받아 순서와 요소를 포함하는 객체로 반환
- 순서와 요소를 반환하여 몇 번째, 어떤 요소를 처리하는지 확인가능
member = ['갑', '을', '병', '정', '무']
for idx,mem in enumerate(member):
if idx%2==0:
print(f'{idx}: {mem}')
※반영과 반환의 차이
반영 : a.메소드()
반환 : a = a.메소드()
'프로그래밍 > python' 카테고리의 다른 글
PYthon_판다스(pandas)_(3) (0) | 2023.02.25 |
---|---|
Python_판다스(pandas)_(2) (0) | 2023.02.11 |
Python_판다스(pandas)_(1) (0) | 2023.02.11 |
Python_배열(numpy) (0) | 2023.02.11 |
Python_함수 (0) | 2023.02.07 |
Comments