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 중국어 웹사이트의 기타 관련 기사를 참조하세요!