Type

2023. 6. 30. 09:50AWS 기반 데이터분석 처리 고급 SW 클라우드 개발자 양성과정

리스트: 순서가 있는 여러 데이터를 묶어서 관리할 수 있는 자료

[list, list]

ex) 

list = ['김길동', '홍길동' '소길동', 윤길동', 전길동']

print(list)

결과: ['김길동', '홍길동', '전길동']

 

-대괄호를 사용하여 인덱싱과 슬라이싱이 가능

print(list[2]

결과: ['전길동']

print(list[-1]

결과: ['전길동']

 

슬라이싱: 전체데이터에서 일부분만 가져오는 과정

print(list[0:2])

결과: ['김길동', '홍길동']

 

내장함수 len()은 요소의 개수를 구해주는 함수이며, 홀수 및 짝수만 구하려면 step(간격을)2로 정하면 됨.

length = len(somelist) 

print(length) # 5

print(list[1:length:2]) #첫번째부터 간격은 2칸씩, 홀수번째만 출력

# ['홍길동', '윤길동']

print(list[0:length:2])

짝수번째만 출력 # 0번째부터 간격은 2칸씩, 짝수번째만 출력

['김길동', '소길동', '전길동']


튜플: 리스트처럼 순서가 있는 여러 데이터를 묶어서 관리하는 자료형, 튜플과 리스트의 차이점은 프로그램이 실행되는 동안 튜플은 어떠한 값이 항상 변하지 않고 일정하길 원한다면 튜플은 사용해야함.

(tuple): 값이 변하지 않음 [list]

tuple01 = (10, 20, 30)

tuple01 = tuple01 + (40,)

print(tuple01) # (10, 20, 30, 40)

print(type(tuple01) # <class 'tuple'>

# 튜플의 또다른 생성방법

1) tuple02 = 10, 20, 30, 40 #처음에는 소괄호로 묶었는데 이번에는 그냥 콤마로 묶어도 상관없음

2) mylist = [10, 20, 30, 40] # 리스트로 만들었다가

print(type(mylist)) # <class 'list'>

tuple03 = tuple(mylist)  # tuple(mylist)로 묶으면 리스트형태에서 튜플로 변경이 됨

 

#딕셔너리 = {key:value}

keys() 함수는 키 목록을 보여주는 항목

dict = {'김유신":50, '윤봉길':40, '김구':60'}

print('사전내역 : ', dict) # 사전내역 : {'김유신":50, '윤봉길':40, '김구':60'}

for key in dict.key():

    print(key) 

#김유신

#윤봉길

#김구

for value in dict.values():

    print(value)

#50

#40

#60

# dict.items(): 를 사용하면 key와 value값을 한 번에 불러올 수 있음

for key, value in dict.items():

    print('{}의 나이는 {}입니다.format(key, value)) 

#김유신의 나이는 50입니다.

#윤봉길의 나이는 40입니다.

#김구의 나이는 60입니다.

findKey = '바보'

if findKey in dict:

    print(findKey + '(은)는 존재')

else:

    print(findKey + '(은)는 존재하지 않음')

 

result = dict.pop('윤봉길') #윤봉길 값만 찾아서 빼내옴

print(result) #40(윤봉길의 나이)

print(dict) #{'김유신': 50, '김구' : 60} #윤봉길 데이터만 빠졌음 b/c pop을 했기 때문이다.


mystring = 'life goes on and on'

mylist = mystring.split() #.split()하면 공백(Space)를 기준으로 문자열을 나누어 리스트에 저장됨.

print(mylist)

#['life', 'goes', 'on', 'and', 'on']

print(len(mylist)) #5

for idx in range(len(mylist)):

    print(idx)

#0

#1

#2

#3

#4

 

#join()을 이용해 list에 있는 단어들 구분해주기

result = '#'.join(mylist)

print(result) 

life#goes#on#and#on


###List Comprehension ### 매우중요

리스트컴프리헨션: 반복(iterable)할 수 있는 오브젝트(list, tuple)을 생성하기 위한 유용한 기법

mylist1 = list(onedata for onedata in range(1,6))

print(mylist1) #[1, 2, 3, 4, 5]

mylist02 = list(10 * onedata for onedata in range(1,6))

print(mylist02) #[10, 20, 30, 40, 50]

 

#리스트 요소 중 짝수인 항목들만 추출하여 각각의 제곱의 값들을 이용해 새로운 리스트를 만들어 줌

mylist03 = [3, 4, 6, 2]

result = [idx ** 2 for idx in mylist03 if idx % 2 ==0] #짝수인 리스트 값 제곱해서 새로운 리스트에 생성

print(result) #[16, 36, 4]

result = [idx ** 2 for idx in mylist03 if idx % 2 !=0] # 홀수인 리스트 값 제곱해서 새로운 리스트 생성

print(result) #[9]

 

wordInfo = {'냉장고':50, '선풍기':60, '청소기':10, '세탁기':20}

print(type(wordInfo)) # <class 'dict'>

myxticks = sorted(wordInfo, key=wordInfo.get, reverse=True) #판매 대수가 큰 순으로 키가 정렬됨

print(myxticks) # [선풍기', '냉장고', '세탁기', '청소기']

 

reverse_key = sorted(wordInfo.keys(),reverse=True) #키 값 역순 정렬

print(reverse_key) #['청소기', '세탁기', '선풍기', '냉장고']

 

chartdata = sorted(wordInfo.values(), reverse=True) #판매대수가 큰 순으로 값이 정렬됨

print(chartdata) # [60, 50, 20, 10]

 

 

 

 

'AWS 기반 데이터분석 처리 고급 SW 클라우드 개발자 양성과정' 카테고리의 다른 글

NodeJS정리  (0) 2023.07.13
AWS_정리  (0) 2023.07.12
용어정리  (0) 2023.06.30
0630  (0) 2023.06.30
06-29  (0) 2023.06.29