2015-01-01 1 views
2

-1과 1 사이의 임의의 숫자 쌍을 생성하려고합니다.python random.random()에 네가티브를 포함하는 방법

음수 또는 음수가 될 수 있지만 ... x와 y에 대한 난수는 음수와 양수로 나올 수 있습니다. 아래는 내가 가진 것입니다 (웹 사이트에서 다트 던지기 시뮬레이션 게임입니다). randx 및 randy는 난수 생성이 좌표로 사용되는 위치입니다.

import turtle 
import math 
import random 

def main(): 

    fred = turtle.Turtle() 
    fred.up() 

    wn = turtle.Screen() 
    wn.setworldcoordinates(-1,-1,1,1) 

    numdarts = 10 
    for i in range(numdarts): 
     randx = random.random() 
     randy = random.random() 

     x = randx 
     y = randy 

     fred.goto(x,y) 
     fred.stamp() 

    wn.exitonclick() 

main() 

답변

8

부동 소수점 숫자를 원한다고 가정합니다. 이 경우, 다음,

x = random.uniform(-1,1) 
+0

가장 간단한 방법 –

+0

내가 간과 한 또 다른 기능이 있는지 궁금합니다. 정보 주셔서 감사합니다! – dcvl

0

당신은 random.random()를 사용하여 2 0에서 임의의 숫자를 생성 할 수 있습니다 사용 -1 to 1에, 1하여 모든 결과를 이동.

2

random.random()은 [0.0-1.0] 사이의 부동 소수점을 제공하므로 2를 곱하여 범위를 [0.0-2.0]까지 확장 할 수 있습니다. 그런 다음 1을 빼고 해당 범위를 [-1.0-1.0] :

import random 

randx = random.random()*2.0 - 1.0 
관련 문제