TIL_85. Intermediate Python(6)

소고기는레어·2021년 3월 13일
0

TIL 📝

목록 보기
87/96
post-thumbnail

2021. 03. 13 토요일

Intermediate Python

Case Study: Hacker Statistics

Random float

  • 넘파이의 random 패키지를 사용해 무작위의 값을 불러올 수 있다.
    • seed() 로 시드를 지정하면 무작위지만 시드를 통해 같은 값을 다시 불러올 수 있다.
    • rand() 를 통해 무작위 값을 불러온다. (인수를 지정하지 않으면 0과 1 사이의 부동 소수점을 랜덤으로 출력한다.)
import numpy as np

np.random.seed(13579)
print(np.random.rand())

#결과
0.16772036313639027
  • 위에서 np.random.seed(13579) 를 통해 시드를 지정해주었기 때문에 몇번을 반복하여도 같은 결과가 나오게 된다. 시드를 지정하지 않는다면 매번 다른 결과가 출력된다.

Random Integer

  • randint() 는 지정한 범위 내의 정수를 랜덤으로 출력한다.
import numpy as np

print(np.random.randint(1, 7))

#결과
4    #결과는 1과 6 사이의 정수가 랜덤으로 출력된다.

Random for loop

  • for 루프에서 random 을 응용할 수 있다.
  • range()for 를 몇번 반복할 지 범위를 지정한다.
  • 잔액 $1000에서 시작하여 $5 ~ $1000 사이의 랜덤한 금액을 5번 빼고 결제 내역과 잔액, 최종 잔액을 출력하는 루프문을 작성해보았다. 만약 결제 금액이 잔액보다 클 경우 잔액에서 빼지 않고 기록만 남긴다.
잔액 = 1000
결제금액 = []
통장내역 = []

for 쇼핑 in range(5) :
    소비 = np.random.randint(5, 1000)
    if 소비 <= 잔액 :
        잔액 = 잔액 - 소비
        결제금액.append('$'+str(소비))
        통장내역.append('$'+str(잔액))
    elif 소비 > 잔액 :
        결제금액.append('$'+str(소비) + '(잔액부족)')
        통장내역.append('$' + str(잔액))
        continue

print('결제 내역 : ' + str(결제금액))
print('잔액 : ' + str(통장내역))
print('최종 잔액 : $' + str(잔액))

#결과
결제 내역 : ['$21', '$650', '$365(잔액부족)', '$114', '$91']
잔액 : ['$979', '$329', '$329', '$215', '$124']
최종 잔액 : $124
profile
https://www.rarebeef.co.kr/

0개의 댓글