본문 바로가기
  • AI 개발자가 될래요

Python35

[Python] zip() 함수 사용법 / 가장 긴 길이에 맞춰 zip() 사용법 파이썬 zip() 함수 사용법 / 가장 긴 길이에 맞춰 zip() 사용법 파이썬에는 이터러블 객체에 대한 처리를 수행하는 몇 가지의 내장함수가 있다. zip() zip() 함수는 여러 이터러블 객체를 받아 튜플을 반환한다. 이 때 zip()은 가장 짧은 이터러블 길이만큼 결과를 반환한다. 예를 들면 다음과 같다. 리스트 x, y, z 중 가장 길이가 짧은 2에 맞춰서 결과를 반환하는 것을 볼 수 있다. 가장 긴 길이에 맞추고 싶을 때 zip() 사용법 때에 따라서는 가장 긴 길이에 맞춰야 할 때도 있다. 그럴 때는 itertools.zip_longest() 함수를 사용해야 한다. 이 때 fillvalue 인수에 원하는 값을 넣어주면 빈 칸에 들어갈 값을 임의로 정할 수 있다. 위의 예시는 빈 칸에 들어갈.. 2024. 1. 17.
[Python] 람다식(lambda) 사용법, 사용할 위치: filter(), sorted() 파이썬 람다식(lambda) 사용법 / 람다식을 사용할 위치: filter(), sorted() 파이썬에서 람다(lambda)식을 이용하면 1행짜리 이름 없는 함수를 만들 수 있다. 함수가 필요할 때 그 즉시 정의할 수 있다는 장점이 있지만, 가독성이 떨어지는 단점이 있다. 람다식 정의법 :을 이용해 입력과 출력을 정의한다. 입력값에 1을 더해 반환하는 함수는 아래처럼 쓸 수 있다. 람다식을 이용하여 정의된 increment 함수에 1을 넣으면 2를 반환한다. 람다식을 사용할 위치, filter(), sorted() 람다식을 무분별하게 이용하면 가독성이 매우 떨어진다. 그래서 적합한 상황에 사용해야 하는데, 주로 함수를 인수로 받는 함수를 호출할 때이다. 예를 들어, 내장 함수 filter()의 첫 번째.. 2024. 1. 16.
[Python] 리스트나 딕셔너리에 저장된 값을 함수의 위치 인수로 전달하는 법 파이썬에서 리스트나 딕셔너리에 저장된 값을 함수의 위치 인수로 전달하는 법 이미 선언되어있는 리스트나 딕셔너리 변수를 따로 수정 없이 바로 함수의 위치 인수로 전달하는 방법이 있다. * 혹은 ** 을 사용하는 것이다. 그 전에 *와 **에 대한 정의를 잘 모르겠다면 아래 글을 참고하면 좋다. https://hsyaloe.tistory.com/110 [Python] *args, **kwargs 란 / 함수 파라미터 설정 시 가변 개수 파라미터 설정하는 법 [Python] *args, **kwargs 뜻 / 함수 파라미터 설정 시 가변 개수 파라미터 설정하는 법 파이썬에서 함수를 선언 시 인수(파라미터, parameter)를 설정해야 한다. 기본적으로는 인수를 0개, 1개, 혹은 그 이 hsyaloe.tis.. 2024. 1. 15.
[Python] *args, **kwargs 란 / 함수 파라미터 설정 시 가변 개수 파라미터 설정하는 법 [Python] *args, **kwargs 뜻 / 함수 파라미터 설정 시 가변 개수 파라미터 설정하는 법 파이썬에서 함수를 선언 시 인수(파라미터, parameter)를 설정해야 한다. 기본적으로는 인수를 0개, 1개, 혹은 그 이상 고정된 개수로 선언하지만, 때에 따라서 1개가 들어올 때도 있고, 3개 이상이 들어올 때도 있을 것이다. 이렇게 인수의 개수가 가변적일 때 함수를 선언하는 방법이 있다. 바로 *args, **kwargs를 사용하는 것이다. 개수가 변하는 위치 인수, *args의 의미 개수가 변하는 인수를 받는 함수는 ⁕가인수 이름에 *을 붙여서 정의할 수 있다. ⁕가인수: 함수를 정의할 때 사용하는 인수 ↔ 실인수: 함수를 호출할 때 전달하는 인수 이 가인수 이름에는 어떤 이름이 들어가도.. 2024. 1. 15.
[Python] "효율적 개발로 이끄는 파이썬 실천 기술" 책 중요 내용 정리 - 2편 "효율적 개발로 이끄는 파이썬 실천 기술" 책 중요 내용 정리 - 2편 ⭐ 딕셔너리의 키에 대한 값을 연속된 스트링으로, str.format() 과 ** 이용 str.format() 메서드의 인수에 **와 함께 딕셔너리를 전달하면 키에 대한 값을 연속된 str으로 바꿔준다. 두번 째 줄에서 format을 정해놓고, 세번째 **d를 사용함으로써 딕셔너리의 각 키에 대한 값을 가져온다. 한 가지 재미있는 점은, books의 str 안에 사용하지 않는 키, 예를 들면 'a' ,가 들어가도 상관 없다는 것이다. 이 방법은 코딩 테스트에서 유용하게 사용될 것 같다. str, bytes 타입 - str: 사람이 읽고 쓰기 쉬운 문자열 - bytes: 컴퓨터가 다루기 쉬운 바이트열 str.encode()와 bytes.. 2024. 1. 4.
[Python] float 타입을 다룰 때 주의점 float 타입을 다룰 때 주의점: 0.3 문제 float 타입을 다룰 때 한 가지 주의할 점이 있다. 0.1을 세 번 더한 것과 0.3이 같은지 비교하는 연산에 False라는 오답을 내놓는다. 이것은 계산기 하드웨어가 0.3을 정확히 표현하지 못하기 때문에 일어나는 현상이다. 해결법 이를 해결하기 위해서는 파이썬 내장 함수 round()로 반올림 하거나 표준 라이브러리인 math 모듈의 math.isclose() 함수 등을 사용해야 한다. round(0.3, 1) 의 의미는 0.3을 소수 첫째점 자리에서 반올림 하라는 뜻이다. math.isclose는 첫 번째 인수와 두 번째 인수가 가까우면 True를 반환한다. 2024. 1. 4.