>백엔드 개발 >파이썬 튜토리얼 >Python에서 부동 소수점 범위를 생성하는 방법은 무엇입니까?

Python에서 부동 소수점 범위를 생성하는 방법은 무엇입니까?

DDD
DDD원래의
2024-10-20 11:04:301035검색

How to Generate a Floating-Point Range in Python?

Python의 부동 소수점 범위

Python의 내장 range() 함수를 사용하면 일련의 정수를 생성할 수 있습니다. 그러나 부동 소수점 숫자로 작업할 때 직선 range()로는 충분하지 않습니다.

문제: 정수가 아닌 단계 크기

range( )를 단계 인수로 부동 소수점으로 사용하면 오류가 발생합니다.

<code class="python">>>> range(0.5, 5, 0.5)
Traceback (most recent call last):
  File "<pyshell#10>", line 1, in <module>
    range(0.5, 5, 0.5)
ValueError: range() step argument must not be zero</code>

이는 range()에서 단계 크기가 정수여야 하기 때문입니다.

해결책: 나눗셈 기반 목록 내포

부동 소수점 범위를 만드는 한 가지 방법은 나눗셈과 결합된 목록 내포를 사용하는 것입니다.

<code class="python">[x / 10.0 for x in range(5, 50, 15)]</code>

이 내포는 범위의 각 요소를 나눕니다(5 , 50, 15)을 10.0으로 곱하여 부동 소수점 시퀀스를 생성합니다.

대안: Map 및 Lambda

또 다른 방법은 map() 함수와 람다를 사용하는 것입니다. 표현식:

<code class="python">map(lambda x: x / 10.0, range(5, 50, 15))</code>

여기서 람다 표현식은 범위의 각 숫자를 10.0으로 나누어 부동 소수점으로 변환합니다. map()은 이 함수를 범위의 모든 요소에 적용하여 부동 소수점 시퀀스를 생성합니다.

위 내용은 Python에서 부동 소수점 범위를 생성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.