본문 바로가기
반응형

리스트35

[파이썬]리스트 안에 여러 딕셔너리가 들어있는데, 각 딕셔너리에서 첫번째 value 값만 가져오는 방법 코드는 아래와 같습니다. my_list = [{"key1": "value1_1", "key2": "value1_2"}, {"key1": "value2_1", "key2": "value2_2"}] first_values = [] for my_dict in my_list: first_values.append(list(my_dict.values())[0]) print(first_values) 2023. 5. 13.
[파이썬] 리스트의 모든 원소 반올림 하는 방법 파이썬의 내장함수인 round 함수는 리스트에 적용할 수 없습니다. 리스트에 적용이 가능한 반올림 함수는 numpy 패키지의 round 함수입니다. 먼저 넘파이 패키지를 불러옵시다. import numpy as np 아래와 같은 리스트를 하나 만들어줍시다. a=[1.11,2.22,3.33,4.44,5.55] np.round 함수를 이용하여 반올림을 해줍시다. >>> np.round(a,1) array([1.1, 2.2, 3.3, 4.4, 5.6]) 리스트의 차원이 더 높아도 가능한지 확인해봅시다. >>> b=[[1.11,2.22],[3.33,4.44]] >>> np.round(b,1) array([[1.1, 2.2], [3.3, 4.4]]) 가능합니다. 2023. 5. 3.
[파이썬] 변수가 두개인 for문 예시 for 문에 들어 있는 i나 j를 변수라고 부릅니다. for 문을 중첩하지 않고도 변수를 여러개 사용할 수 있습니다. 아래는 변수를 여러개 사용하는 예시입니다. import numpy as np a=[[75,185],[65,177],[55,156]] bmi_list=[] for weight,height in a : bmi=weight/(height/100)**2 bmi_list.append(bmi) bmi_list=np.round(bmi_list,1) bmi_list 에 저장된 값은 아래와 같습니다. >>> bmi_list array([21.9, 20.7, 22.6]) 2023. 5. 3.
[파이썬] 리스트 원소를 복사할 때 기존 리스트 영향 안받게 복사하기 1. 종속적인 복사 (얕은 복사) 아래와 같은 리스트가 있다고 합시다. a=[1,2,3,4,5] a를 b에 아래와 같이 복사합시다. b=a 만약 a를 변경하면 b도 변경됩니다. >>> a.remove(1) >>> b [2, 3, 4, 5] a를 변경해도 b는 변경되지 않도록 복사하고 싶은 경우 사용하는 방법이 copy 메소드입니다. 2. 독립적인 복사 (깊은 복사) a를 다시 정의하고 아래와 같이 복사합시다. >>> a=[1,2,3,4,5] >>> b=a.copy() a를 변경해도 b가 변하지 않습니다. >>> a.remove(1) >>> b [1, 2, 3, 4, 5] 2023. 5. 3.
[파이썬] 리스트 원소를 랜덤하게 썪는 방법 (random.shuffle) 아래와 같은 리스트가 있습니다. a=[1,2,3,4,5,6,7,8,9,10] 순서를 랜덤하게 섞어봅시다. random 패키지의 shuffle 함수를 사용합니다. >>> import random >>> random.shuffle(a) >>> a [5, 8, 1, 2, 4, 9, 3, 6, 10, 7] 리스트 a가 랜덤하게 섞인 것을 알 수 있습니다. 2023. 5. 2.
[파이썬] 리스트의 마지막 요소를 삭제하고 반환 (pop) 아래와 같은 리스트가 있습니다 . a=[1,2,3,4,5] pop 메소드를 아무 입력값 없이 사용하면 리스트의 마지막 값을 제거하며 반환합니다. >>> a.pop() 5 마지막 값이 제거되었나 확인해봅시다. >>> a [1, 2, 3, 4] 2023. 5. 2.
[파이썬] 리스트 각 원소에 원하는 함수 적용하기 (map) 리스트의 각 원소에 원하는 함수를 적용하는 방법입니다. 아래와 같은 형식으로 사용합니다. list(map(함수이름,리스트이름)) 아래는 리스트 각 원소를 실수로 바꾸는 방법입니다. >>> mylist=['1.3','5.5','1.2e7'] >>> list(map(float,mylist)) [1.3, 5.5, 12000000.0] 2022. 5. 23.
[파이썬] 리스트가 비어있는지 확인하는 방법 비어있는 리스트를 하나 정의합시다. mylist=[] 1) 길이가 0인지 확인 >>> len(mylist)==0 True 2) not 연산자 사용 리스트가 비어 있을 경우 not 연산자의 결과가 True >>> not mylist True 2022. 5. 20.
[파이썬 판다스] 시리즈에서 인덱스 여러 층으로 정의하기 (계층적 인덱스) 독립변수가 두개 이상인 자료를 표로 정리해야하는 경우가 있습니다. 예를들어 독립변수가 거주지, 성별이고 종속변수가 인구 수인 경우를 생각해봅시다. 독립변수 : 거주지, 성별 종속변수 : 인구 수 표로 정리하면 아래와 같습니다. 파이썬 시리즈에서 위 표를 정의해봅시다. import pandas as pd import numpy as np #데이터 생성 sr1=pd.Series([50,50,30,30,20,20], index=[['서울','서울','경기','경기','제주',"제주"],['남자','여자','남자','여자','남자','여자']]) 인덱스를 2차원 리스트로 정의하면 됩니다. 결과는 아래와 같습니다. >>> sr1 서울 남자 50 여자 50 경기 남자 30 여자 30 제주 남자 20 여자 20 dt.. 2022. 2. 24.
[파이썬] 딕셔너리를 리스트로 변환 딕셔너리를 하나 정의합니다. >>> dict1={'A':1,'B':2,'C':3} >>> dict1 {'A': 1, 'B': 2, 'C': 3} key를 리스트로 변환해봅시다. >>> list(dict1.keys()) ['A', 'B', 'C'] value를 리스트로 변환해봅시다. >>> list(dict1.values()) [1, 2, 3] 2022. 1. 19.
[파이썬] 리스트 할당과 복사 (2차원 배열에서는 왜 안될까) 아래와 같이 a라는 리스트를 정의해봅시다. >>> a=[1,2,3] b에 a를 할당합니다. >>> b=a >>> b [1, 2, 3] b를 수정하면 a가 바뀔까요. 바뀌지 않을까요? 한번 수정해봅시다. >>> b[0]=2 >>> a [2, 2, 3] a도 함께 바뀝니다. copy 메소드 만약 b를 a와 같게 정의하고, 이후에는 b만 독립적으로 사용하려면 어떻게 해야 할까요? copy 메소드를 사용하면 됩니다. copy 메소드로 b를 정의해봅시다. >>> a=[1,2,3] >>> b=a.copy() >>> a [1, 2, 3] >>> b [1, 2, 3] b의 원소를 바꿔봅시다. >>> b[0]=50 >>> a [1, 2, 3] >>> b [50, 2, 3] b만 변경되었습니다. copy 메소드에는 한계가.. 2021. 11. 9.
리스트 인덱싱과 슬라이싱 음수로 하는법 확장자 등을 제거하기 위해 리스트 인덱싱을 거꾸로 해야하는 경우가 있습니다. 예를 들어봅시다. 인덱싱 >>> L=[1,2,3,4,5,6] >>> L[-1] 6 >>> L[-2] 5 >>> L[-3] 4 -1 부터 인덱스로 사용합니다. 슬라이싱 슬라이싱도 가능합니다. >>> L[-3:-1] [4, 5] -1까지 슬라이싱해도 리스트의 끝까지 슬라이싱이 되지 않습니다. 리스트의 끝까지 슬라이싱 하려면 아래와 같이 입력합니다. >>> L[-3:] [4, 5, 6] 2021. 5. 20.
파이썬 range 값 확인하는 방법 rage 값을 확인하고 싶을 때는 list 함수를 적용하면 됩니다. >>> range(5) range(0, 5) 위 range에 list 함수를 적용해봅시다. >>> list(range(5)) [0, 1, 2, 3, 4] 다른 경우도 봅시다. >>> range(2,6) range(2, 6) 위 range에 list 함수를 적용해봅시다. >>> list(range(2,6)) [2, 3, 4, 5] 2021. 3. 26.
[파이썬 기초] 리스트 생성 시 값만 참조하는 방법 [파이썬 기초] 리스트 생성 시 값만 참조하는 방법 A라는 리스트를 만들고, A를 참조하여 B를 만들었다고 합시다. >>> A=[1,2,3]>>> B=A>>> B[1, 2, 3] 위와 같이 참조할 경우 A의 일부가 바뀌면 B가 함께 바뀐다는 문제가 있습니다. >>> A[0]=100>>> B[100, 2, 3] 물론 의도한 것이라면 상관 없습니다. 만약 의도한 것이 아니고, A의 일부가 바뀌어도 B가 바뀌지 않길 원한다면 아래와 같이 B를 정의해주면 됩니다. >>> A=[1,2,3]>>> B=A[:]>>> B[1, 2, 3] A의 일부를 수정해봅시다. >>> A[0]=1000>>> B[1, 2, 3] B가 바뀌지 않은 것을 알 수 있습니다. 2020. 11. 10.
[파이썬 기초] 리스트 생성 시 주의할 점 (리스트 참조) [파이썬 기초] 리스트 생성 시 주의할 점 (리스트 참조) 리스트를 참조하여 생성할 때 주의할 사항이 있습니다. 이해를 위해 예를 하나 들겠습니다. 리스트 A를 정의하고, A를 참조하여 B를 만들겠습니다. >>> A=[1,2,3]>>> B=A>>> B[1, 2, 3] 만약 A를 통채로 바꾸면 B가 어떻게 될까요? >>> A=[10,20]>>> B[1, 2, 3] B는 처음에 참조한 값에서 바뀌지 않습니다. 그렇다면 한번 참조한 뒤에는 A의 변화가 B에 영향을 미치지 않는걸까요? 다시 A를 정의하고, A를 참조하여 B를 만들어봅시다. >>> A=[1,2,3]>>> B=A>>> B[1, 2, 3] 이번에는 A의 첫번째 원소만 바뀌봅시다. >>> A[0]=100>>> B[100, 2, 3] B가 바뀌었습니다... 2020. 11. 10.
[파이썬기초] range 함수로 리스트 정의하기 (등차수열 쉽게 정의하기) [파이썬기초] range 함수로 리스트 정의하기 (등차수열 쉽게 정의하기) range 함수 설명 range 함수는 0을 포함한 자연수의 수열을 반환해주는 함수입니다. 세가지 사용방법이 있습니다. range(값)range(시작값,끝값+1)range(시작값,끝값+1,간격) range를 이용하여 list 정의 range 함수 결과에 list 함수를 적용하면 됩니다. >>> list(range(5))[0, 1, 2, 3, 4] >>> list(range(2,4))[2, 3] >>> list(range(2,9,2))[2, 4, 6, 8] >>> list(range(2,10,2))[2, 4, 6, 8] 2020. 11. 3.
[파이썬기초] 리스트 길이를 구하는 법 (len) [파이썬기초] 리스트 길이를 구하는 법 리스트의 길이를 구할 때는 len 함수를 사용합니다. 리스트를 하나 정의합시다. >>> L=[1,2,2,4,5] >>> L [1,2,2,4,5] len 함수를 사용해봅시다. >>> len(L) 5 2020. 11. 2.
[파이썬기초] 리스트 슬라이싱의 결과는 리스트다 [파이썬기초] 리스트 슬라이싱의 결과는 리스트다 리스트 인덱싱을 하면 결과로 반환되는 값은 해당 값의 자료형을 갖습니다. 예를들어봅시다. >>> L=[1,'a',{1,2}] >>> L[0]1 >>> L[1]'a' >>> L[2]{1, 2} 슬라이싱을 하면 하나의 원소에 접근하더라도 리스트로 출력됩니다. >>> L[0:1][1] 2020. 10. 30.
[파이썬 기초] 딕셔너리(Dictionary)를 리스트를 이용하여 정의하기 [파이썬 기초] 딕셔너리(Dictionary)를 리스트를 이용하여 정의하기 Key에 해당하는 리스트와 Value에 해당하는 리스트를 이용하여 딕셔너리를 정의해봅시다. 먼저 Key로 사용할 리스트와 Value로 사용할 리스트를 정의합시다. >>> K=['apple','banana','Plum']>>> K['apple', 'banana', 'Plum']>>> V=[1,2,3]>>> V[1, 2, 3] 자료형을 묶어주는 zip 함수를 적용한 뒤, 딕셔너리를 생성하는 dict 함수를 적용해줍니다. >>> dict(zip(K,V)){'apple': 1, 'banana': 2, 'Plum': 3} 2020. 10. 30.
[파이썬 기초] 딕셔너리(Dictionary)에 딕셔너리 추가하기 [파이썬 기초] 딕셔너리(Dictionary)에 딕셔너리 추가하기 딕셔너리를 하나 정의합시다. >>> Dic1={'Apple':'사과','Banana':'바나나','Plum':'자두'}>>> Dic1{'Apple': '사과', 'Banana': '바나나', 'Plum': '자두'} 또 다른 딕셔너리를 정의합시다. >>> Dic2 = {'a': 1, 'b': 2, 'c': 3}>>> Dic2{'a': 1, 'b': 2, 'c': 3} Dic1 에 Dic2를 추가합시다. . >>> Dic1.update(Dic2)>>> Dic1{'Apple': '사과', 'Banana': '바나나', 'Plum': '자두', 'a': 1, 'b': 2, 'c': 3} 2020. 10. 30.
[파이썬 기초] 딕셔너리(Dictionary) Value 만 추출하고 리스트로 변환하기 [파이썬 기초] 딕셔너리(Dictionary) Value 만 추출하고 리스트로 변환하기 딕셔너리를 하나 정의합시다. >>> Dic={'Apple':'사과','Banana':'바나나','Plum':'자두'}>>> Dic{'Apple': '사과', 'Banana': '바나나', 'Plum': '자두'} Value 에만 접근해봅시다. >>>Dic.values()dict_values(['사과', '바나나', '자두']) 리스트로 변환합시다. >>> list(Dic.values())['사과', '바나나', '자두'] 2020. 10. 30.
[파이썬 기초] 딕셔너리(Dictionary) Key:Value 쌍 삭제하기 (pop 메소드) [파이썬 기초] 딕셔너리(Dictionary) Key:Value 쌍 삭제하기 (pop 메소드) 딕셔너리를 하나 정의합시다. >>> Dic={'Apple':'사과','Banana':'바나나','Plum':'자두'}>>> Dic{'Apple': '사과', 'Banana': '바나나', 'Plum': '자두'} 딕셔너리의 Key:Value 쌍을 삭제할 때는 pop 메소드를 사용합니다. >>> Dic={'Apple':'사과','Banana':'바나나','Plum':'자두'}>>> Dic.pop('Apple')'사과'>>> Dic{'Banana': '바나나', 'Plum': '자두'} 2020. 10. 30.
[파이썬기초] 리스트 요소 길이 순으로 정렬 (sort) [파이썬기초] 리스트 요소 길이 순으로 정렬 리스트 요소를 길이 순으로 정렬할 때는 sort 메소드에서 key=len 을 입력해주면 됩니다. 리스트를 하나 정의합시다. >>> L=[1,2,3,4,5] >>> L [1,2,3,4,5] 길이순으로 정렬해봅시다. >>> L.sort(key=len) Traceback (most recent call last): File "", line 1, in L.sort(key=len) TypeError: object of type 'int' has no len() 오류가 발생합니다. int는 길이가 정의되지 않기 때문입니다. 요소로 문자열이나 리스트를 넣어야 합니다. 리스트를 다시 정의합시다. >>> L=[[1,2],'asd','a',[1,2,3,4,5],'asdf'] >.. 2020. 10. 23.
[파이썬기초] 리스트 요소 순서 거꾸로 뒤집기 (reverse 사용) [파이썬기초] 리스트 요소 순서 거꾸로 뒤집기 (reverse 사용) 리스트 요소의 순서를 거꾸로 뒤집을 때는 reverse 메소드를 사용합니다. 리스트를 하나 정의합시다. >>> L=[1,2,3,4,5]>>> L[1,2,3,4,5] 순서를 거꾸로 뒤집어봅시다. >>> L.reverse()>>> L[5, 4, 3, 2, 1] 2020. 10. 23.
[파이썬기초] 리스트 내림차순, 오름차순 정렬하는 방법 (sort 사용) [파이썬기초] 리스트 내림차순, 오름차순 정렬하는 방법 (sort 사용) 오름차순과 내림차순에는 sort 메소드를 사용합니다. 숫자 오름차순 정렬 리스트를 하나 정의합시다. >>> L=[1,5,2,4,3]>>> L[1,5,2,4,3] 오름차순 정렬합시다. >>> L.sort()>>> L[1, 2, 3, 4, 5] 숫자 내림차순 정렬 리스트를 하나 정의합시다. L=[1,5,2,4,3]L[1,5,2,4,3] 내림차순으로 정렬합시다. >>> L.sort(reverse=True)>>> L[5, 4, 3, 2, 1] 2020. 10. 23.
[파이썬기초] 요소가 리스트에 있는지 확인하는 방법 [파이썬기초] 요소가 리스트에 있는지 확인하는 방법 어떤 요소가 리스트에 있는지 확인하는 방법을 알아봅시다. 리스트를 하나 정의합시다. >>> L=[1,2,3,4,5]>>> L[1,2,3,4,5] 3이 리스트 L에 들어있는지 확인하는 방법은 아래와 같습니다. >>> 3 in LTrue 100이 리스트 L에 들어있는지 확인하는 방법은 아래와 같습니다. >>> 100 in LFalse 2020. 10. 23.
[파이썬기초] 리스트 요소 삭제 - 요소 인덱스를 입력 (pop) [파이썬기초] 리스트 요소 삭제 - 요소 인덱스를 입력 (pop) 리스트 요소를 삭제하는 메소드는 remove 와 pop 이 있습니다. 둘의 차이는 아래와 같습니다. - remove : 요소 이름을 입력하여 삭제- pop : 요소 이번 글에서는 pop 메소드를 이용한 요소삭제 방법을 알아봅시다. pop 메소드는 삭제될 요소가 무엇인지도 출력해줍니다. 숫자 요소를 삭제 리스트를 하나 정의합시다. >>> L=[100,200,300,400]>>> L[100,200,300,400] 200를 삭제합시다. >>> L.pop(1)200>>> L[100, 300, 400] 리스트 요소를 삭제 리스트를 하나 정의합시다. >>> L=[[1,2],3,4]>>> L[[1,2],3,4] [1,2] 를 삭제합시다. >>> L.p.. 2020. 10. 23.
[파이썬기초] 리스트 요소 삭제 - 요소 이름을 입력 (remove) [파이썬기초] 리스트 요소 삭제 - 요소 이름을 입력 (remove) 리스트 요소를 삭제하는 메소드는 remove 와 pop 이 있습니다. 둘의 차이는 아래와 같습니다. - remove : 요소 이름을 입력하여 삭제- pop : 요소 인덱스를 입력하여 삭제 이번 글에서는 remove 메소드를 이용한 요소삭제 방법을 알아봅시다. 숫자 요소를 삭제 리스트를 하나 정의합시다. >>> L=[100,200,300,400]>>> L[100,200,300,400] 200를 삭제합시다. >>> L.remove(200)>>> L[100, 300, 400] 리스트 요소를 삭제 리스트를 하나 정의합시다. >>> L=[[1,2],3,4]>>> L[[1,2],3,4] [1,2] 를 삭제합시다. >>> L.remove([1,2].. 2020. 10. 23.
[파이썬기초] 리스트 요소 수정 [파이썬기초] 리스트 요소 수정 리스트는 요소 수정이 가능한 자료구조입니다. 인덱싱 후에 원하는 값을 입력해주면 됩니다. 단일 요소 수정 리스트를 하나 정의합시다. L=[1,2,3,4]L[1,2,3,4] 두번째 요소를 10으로 수정합시다. >>> L[0]=10>>> L[10, 2, 3, 4] 여러 요소를 한번에 수정 리스트를 하나 정의합시다. >>> L=[1,2,3,4]>>> L[1,2,3,4] 세번째 요소를 [10,100] 으로 수정합시다. >>> L[2]=[10,100]>>> L[1, 2, [10, 100], 4] 2020. 10. 23.
[파이썬기초] 리스트 요소 삽입 (insert 사용) [파이썬기초] 리스트 요소 삽입 (insert 사용) append 메소드는 리스트의 끝에 요소를 추가합니다. 리스트 중간에 요소를 삽입할 경우 insert 메소드를 사용합니다. 리스트에 숫자 삽입 리스트를 하나 정의합니다. >>> L=[1,2,3,4]>>> L[1, 2, 3, 4] 1과2 사이에 10을 삽입해봅시다. >>> L.insert(1,10)>>> L[1, 10, 2, 4, 10, 15] 리스트에 리스트 삽입 >>> L=[1,2,3,4]>>> L[1, 2, 3, 4] 2와3 사이에 [10,100]을 삽입해봅시다. >>> L.insert(2,[10,100])>>> L[1, 2, [10, 100], 3, 4] 2020. 10. 23.
반응형