pythonrandint⽤法_Pythonrandint()⽤法及代码⽰例randint()是Python3中随机模块的内置函数。随机模块提供对各种有⽤功能的访问,其中⼀个功能可以⽣成随机数,即randint()。句法:
randint(start, end)
参数:
(start, end): Both of them must be integer type values.
返回值:
A random integer within the given range as parameters.
错误和异常:
ValueError:Returns a ValueError when floating
point values are passed as parameters.
TypeError:Returns a TypeError when anything other than
numeric values are passed as parameters.
代码1:
# Python3 program explaining work
# of randint() function
# imports random module
import random
# Generates a random number between
# a given positive range
r1 = random.randint(0, 10)
print("Random number between 0 and 10 is % s" % (r1))
# Generates a random number between
# two given negative range
r2 = random.randint(-10, -1)
print("Random number between -10 and -1 is % d" % (r2))
# Generates a random number between
# a positive and a negative range
r3 = random.randint(-5, 5)
print("Random number between -5 and 5 is % d" % (r3))
输出:
Random number between 0 and 10 is 5
Random number between -10 and -1 is -7
Random number between -5 and 5 is 2
代码2:程序演⽰ValueError。
# imports random module
import random
'''If we pass floating point values as
parameters in the randint() function'''
r1 = random.randint(1.23, 9.34)
print(r1)
输出:
Traceback (most recent call last):
File "/home/f813370b9ea61dd5d55d7dadc8ed5171.py", line 6, in
r1=random.randint(1.23, 9.34)
File "/usr/lib/python3.5/random.py", line 218, in randint
return self.randrange(a, b+1)
File "/usr/lib/python3.5/random.py", line 182, in randrange
raise ValueError("non-integer arg 1 for randrange()")
ValueError:non-integer arg 1 for randrange()
代码3:程序演⽰TypeError。
# imports random
import random
'''If we pass string or character literals as
parameters in the randint() function'''
r2 = random.randint('a', 'z')
print(r2)
输出:
Traceback (most recent call last):
File "/home/fb805b21fea0e29c6a65f62b99998953.py", line 5, in
r2=random.randint('a', 'z')
File "/usr/lib/python3.5/random.py", line 218, in randint
return self.randrange(a, b+1)
TypeError:Can't convert 'int' object to str implicitly
应⽤范围:
randint()函数可⽤于模拟幸运抽奖情况。
假设⽤户参加了幸运抽奖⽐赛。⽤户有3次机会猜测1到10之间的数字。如果猜测正确,则⽤户获胜,否则将输掉⽐赛。# importing randint function
# from random module
from random import randint
# Function which generates a new
# random number everytime it executes def generator():
return randint(1, 10)
# Function takes user input and returns # true or false depending whether the
# user wins the lucky draw!
def rand_guess():
# calls generator() which returns a
# random integer between 1 and 10 random_number = generator()
# defining the number of
# guesses the user gets
guess_left = 3
# Setting a flag variable to check
# the win-condition for user
flag = 0
# looping the number of times
# the user gets chances
while guess_left > 0:
# Taking a input from the user
guess = int(input("Pick your number to " "enter the lucky draw\n"))
# checking whether user's guess
# matches the generated win-condition if guess == random_number:
# setting flag as 1 if user guessses
# correctly and then loop is broken
flag = 1
break
else:
# If user's choice doesn't match
# win-condition then it is printed
print("Wrong Guess!!")
# Decrementing number of
# guesses left by 1
guess_left -= 1
# If win-condition is satisfied then,
# the function rand_guess returns True if flag is 1:
return True
# Else the function returns Falsepython新手代码及作用
else:
return False
# Driver code
if __name__ == '__main__':
if rand_guess() is True:
print("Congrats!! You Win.")
else :
print("Sorry, You Lost!")
输出:
Pick your number to enter the lucky draw 8
Wrong Guess!!
Pick your number to enter the lucky draw 9
Wrong Guess!!
Pick your number to enter the lucky draw 0
Congrats!! You Win.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论