본문 바로가기

프로그래밍/Python79

파이썬(Python) 딕셔너리(dictionary) 키 삭제하기 (feat. pop, del) 이번 포스팅에서는 파이썬(Python) 딕셔너리(dictionary)의 특정 키를 지우는 방법에 대해서 알아보려고 한다. 딕셔너리 키 제거 방법 딕셔너리 키를 제거하는 방법에는 pop을 이용하는 방법과 del을 이용하는 방법이 있다. 1) pop을 이용한 제거 pop 함수에 제거하고 싶은 키를 입력하면 된다. 이때 두 번째 인자에 None을 입력했음을 주목하자. 이는 만약 해당 키가 딕셔너리에 없다면 에러 대신 None을 리턴하겠다는 뜻이다. sample_dict = { '수학':80, '국어':90, '영어':95 } print(sample_dict) sample_dict.pop('수학', None) print(sample_dict) 코드를 실행하면 '수학' 키가 없어진 것을 알 수 있다. 2) del.. 2022. 9. 15.
파이썬 update 함수로 dictionary(딕셔너리) 업데이트 하기 파이썬(Python)에서 딕셔너리 전용 함수로 update가 있다. 이 함수는 기존 딕셔너리에 새로운 키와 값을 추가하거나 기존 값을 수정할 수 있다. 이번 포스팅에서는 그 사용법을 알아보자. update 사용법 방법은 간단하다. update 함수에 수정하거나 추가하고자 할 키와 값을 딕셔너리 형태로 넘겨주면 된다. 아래 코드는 기존 딕셔너리(sample_dict)에 해당 키가 이미 있다면 대응하는 값을 수정(업데이트)하고 없다면 새로운 키와 값을 추가한다. sample_dict = { '수학':80, '국어':90 } ## 수학 성적을 95로 수정, 영어 성적 70점 추가 sample_dict.update({'수학':95, '영어':70}) print(sample_dict) 만약 update를 사용하지.. 2022. 9. 15.
operator 모듈 알아보기 operator 모듈은 파이썬에서 수행 가능한 연산을 효율적으로 처리할 수 있는 함수를 모아놓은 것이다. 이번 포스팅에서는 자주 활용되는 operator 기능을 소개한다. operator 기능 1) 사칙 연산 우선 덧셈에 대해서 살펴보자. operator.add(x, y)는 두 인자의 합을 계산하며 x+y와 같은 기능을 한다. 굳이 operator.add를 사용하는 이유는 두 인자를 동적으로 넣어줘야 할 때 필요하기 때문이다. 물론 이것도 lambda 등을 사용하면 operator가 필요 없을 때가 있다. 아래 코드는 operator의 사용 예시이다. import operator a = [1,2,3] b = [10, 20, 30] list(map(operator.add, a, b )) operator에서.. 2022. 8. 30.
functools reduce 함수 사용법 알아보기 이번 포스팅에서는 functools 모듈의 reduce 함수 사용법을 알아보려고 한다. reduce 함수 사용법 1) 기본 사용법 reduce 함수는 첫 번째 인자로 두 개 인자를 받는 함수를 받는다. 그리고 두 번째 인자는 함수를 적용할 객체를 받는다. 세 번째 인자는 초기값 설정인데 없어도 된다. 아래 코드를 통해 reduce 함수의 사용 방법을 익혀보자. from functools import reduce f = lambda x, y: 3*x+2*y ## x, y 2개 인자를 받는 함수 result = reduce(f, [1,2,3]) print(result) 아래 그림은 위 코드에서 reduce 함수 작동 방식을 나타낸 것이다. 먼저 첫 단계에서 리스트의 첫 번째, 두 번째 원소가 x, y에 들어.. 2022. 8. 29.
Python map 함수 사용법 알아보기. 이번 포스팅에서는 파이썬(Python) 내장 함수 map 사용 방법을 알아보자. map 사용법 1) 필요성 먼저 map 함수가 왜 필요한지 예를 통하여 살펴보자. 숫자를 담고 있는 리스트에 원소별로 제곱을 한다고 해보자. 가장 먼저 떠오르는 방법은 다음과 같을 것이다. def f(x): return x**2 li = [1,3,5,6,7,8] res = [] for v in li: res.append(f(v)) print(res) 하지만 이는 빈 리스트와 for 문을 사용하고 append까지 해주는 등 코딩해야 할 것이 많다. 2) map 사용법 이제 같은 작업을 map을 이용하여 수행해보자. map은 첫 번째 인자로 리스트 원소에 적용할 함수, 두 번째 인자로 대상 리스트(또는 순회 가능한 객체)를 받는.. 2022. 8. 29.
[오류 해결] module 'distutils' has no attribute 'version' 얼마 전 Pandas에서 read_excel을 사용하다가 다음과 같은 에러가 발생했다. module 'distutils' has no attribute 'version' 이유는 잘 모르겠지만 setuptools를 최신 버전으로 업그레이드하니까 잘되었다. 업그레이드의 경우 아래와 같이 기존 setuptools를 제거를 먼저 했다. 이때 액세스 거부 오류가 발생하면 pip을 실행시키고자 하는 명령 프롬프트를 '관리자 권한'으로 실행한 후 아래 명령어를 실행하면 된다. pip uninstall setuptools 그러고 나서 아래 명령을 통해 최신 버전으로 setuptools를 설치한다. pip install setuptools 이렇게 하니까 해당 오류가 없어지는 신기한 현상을 두눈으로 목격하게 되었다. 2022. 8. 4.
[Python] Python에서 오류가 발생하는 경우 StackOverflow로 검색하기. webbrowser 모듈을 사용하면 파이썬(Python)에서 오류(error)가 발생한 경우 try, except 문에서 받은 오류 메시지 관련 내용을 StackOverflow에서 검색할 수 있다. webbrowser 모듈은 파이썬에서 제공하는 내장 모듈이므로 따로 설치할 필요가 없다. 아래 코드를 실행시켜 보자. 에러가 발생하면 관련 내용을 StackOverflow에서 검색해준다. import webbrowser try: a = [1,2,3] print(a[4]) except Exception as error_msg: webbrowser.open(f'http://stackoverflow.com/search?q={error_msg}',new=0,autoraise=True) 코드를 처음으로 실행하면 로봇인.. 2022. 7. 19.
[오류 해결] Glyph 8722 missing from current font (Matplotlib에서 빼기, '-', minus, 음수 부호 표기 오류) Matplotlib은 기본적으로 '-'(빼기, 음수 부호) 표시가 제대로 표기되지 않는다. 그와 동시에 아래와 같은 경고메시지를 출력한다. Glyph 8722 missing from current font 아래 코드를 실행하면 x축에서 음수 표시가 제대로 되지 않으며 "Glyph 8722 missing from current font" 메시지 또한 출력한다. import matplotlib.pyplot as plt fig = plt.figure(figsize=(8,8)) fig.set_facecolor('white') ax = fig.add_subplot() ax.plot([-1,-2,-3,-4,-5],[3,5,6,3,6]) plt.show() 이때에는 matplotlib.pyplot을 임포트하고 나서 .. 2022. 7. 18.
파이썬(Python) 함수에 부분 인자 적용하기 (feat. partial) 파이썬 코딩을 하다 보면 함수에 모든 인자가 아닌 특정 부분 인자만 고정시키고 다른 인자에는 for loop를 돌면서 동적으로 할당하고 싶을 때가 있다. 파이썬에서는 functools 모듈의 partial을 이용하면 이 모든 것이 가능하다. 따라서 이번 포스팅에서는 functools 모듈의 partial의 사용법과 예제를 알아보자. 1. partial 사용법 partial은 첫번째 인자로 함수를 넣어주고 뒤이어 해당 함수의 인자값을 정해주는 방식이다. partial( '함수', '인자1', '인자2', . . . ) 2. partial 예제 사용법을 알았으니 실제로 써보자. 다음 코드는 a, b, c, d 인자를 갖는 함수 func에서 a, b인자를 먼저 고정시켜놓고 나머지 c, d 인자에 대한 함수 g.. 2022. 7. 15.
파이썬(Python) 내장 함수 iter 사용법 (feat. next) 이번 포스팅에서는 파이썬(Python) 내장 함수인 iter 함수의 사용법을 알아보려고 한다. 1. iter 함수 사용법 iter 함수는 순회 가능한(Iterable) 객체를 받아서 Iterator로 바꿔준다. 또한 특정값(Sentinel)을 지정하여 더 이상 값을 꺼내지 않도록 설정할 수도 있는데 이때에는 첫 번째 인자로 순회 가능한 객체가 아닌 호출 가능한(Callable) 함수를 넣는다. 구체적인 사용법은 다음과 같다. iter( '순회가능한 객체' ) iter( '호출 가능한 객체', '반복 감시자' ) 2. iter 함수 예제 사용법을 알았으니 실제로 써보자. a. 첫 번째 사용법 다음은 리스트를 iterator 객체로 바꿔준다. iterator는 그 자체로 출력할 순 없고 for 문이나 lis.. 2022. 7. 14.

맨 위로