Функция Python | randint()

| | | | | | | | | | | | | | | | |

Синтаксис:

randint (начало, конец) 

Параметры:

(начало, конец):  Оба они должны быть значениями целочисленного типа. 

Возвращает:

случайное целое число в заданном диапазоне в качестве параметров. 

Ошибки и исключения:

ValueError:  возвращает ValueError, когда в качестве параметров передаются значения с плавающей запятой. TypeError:  возвращает TypeError, когда в качестве параметров передаются любые значения, кроме числовых. 

Код № 1:

# Программа Python3, объясняющая, как это работает
# функция randint()


# импортирует случайный модуль

import random


# Генерирует случайное число между
# указанным положительным диапазоном

r1 = random.randint( 0 , 10 )

print ( "Случайное число от 0 до 10 равно %s" % (r1))


# Генерирует случайное число между
# двумя указанными отрицательными диапазонами

r2 = random.randint( - 10 , - 1 )

print ( "Случайное число между -10 и -1 равно %d" % (r2))


# Генерирует случайное число из
# положительных и отрицательных диапазонов

r3 = random.randint ( - 5 , 5 )

print ( "Случайное число между -5 и 5 равно %d" % (r3))

Вывод:

Случайное число от 0 до 10 равно 5 Случайное число от -10 до -1 равно -7 Случайное число от -5 до 5 равно 2 

Код # 2 : Программа, показывающая ValueError.


# импортирует случайный модуль

import random


' ' ' Если мы передаем значения с плавающей запятой в качестве параметров
в функцию randint() ' ' '


r1 = случайный. randint ( 1.23 , 9.34 )

print (r1)

Выход:

Отслеживание (последний последний вызов): файл "/home/f813370b9ea61dd5d55d7dadc8ed5171.py", строка 6, в r1 = random.randint (1.23, 9.34) Файл "/usr/lib/python3.5/random.py", строка 218, в randint return self.randrange(a,b+1) Файл "/usr/lib/python3. 5/random.py", строка 182, в randrange поднять ValueError ("нецелочисленный аргумент 1 для randrange()") ValueError: нецелочисленный аргумент 1 для randrange() 

Код # 3: Программа, показывающая TypeError.


# импортирует случайный

import случайный


' ' ' Если мы передаем строковые или символьные литералы в качестве параметров
в функции randint() ' ' '


r2 = случайный. randint ( `a` , `z` )

print (r2)

Вывод:

Отслеживание (последний последний вызов): Файл "/home/fb805b21fea0e29c6a65f62b99998953.py", строка 5, в r2 = random.randint(`a`, `z`) File "/usr/lib/python3.5/random.py", строка 218, в randint return self.randrange(a, b + 1) TypeError : Невозможно неявно преобразовать объект int в str 

Применения:

Функция randint() может использоваться для моделирования ситуации счастливого розыгрыша.

Допустим, пользователь принял участие в розыгрыше лотереи. У пользователя есть три попытки угадать число от 1 до 10. При правильном угадывании пользователь выигрывает, в противном случае проигрывает.


# import функции randint
# из случайного модуля

from random import randint


# Функция, которая генерирует новую
# случайное число при каждом выполнении

def генератор ():

return randint ( 1 , 10 )


# Функция принимает пользовательский ввод и возвращает
# true или false в зависимости от того,
# пользователь выиграл счастливый розыгрыш!

def rand_guess ():

# вызывает генератор(), который возвращает

# случайное целое число от 1 до 10

random_number = генератор ()


# квантификация

# предположения, которые получает пользователь

Guess_Left = 3

# Установка переменной флага в проверьте

# условие победы для пользователя

flag = 0


# количество циклов

# пользователь получает шансы

while Guess _left > ; 0 :


# Принятие пользовательский ввод

угадать = int ( input ( "Выберите номер"

"участвуйте в розыгрыше" ))


# проверка правильности предположения пользователя

# соответствует сгенерированному условию выигрыша

if угадать = = random_number:


# установка флага в 1, если пользователь угадал

# правильно, после чего цикл завершается

флаг = 1

break


else :


# Если выбор пользователя не соответствует

# win-условие, то печатается

print ( "Неверное предположение!!" )


# Уменьшить количество

# догадок осталось 1

guess_left - = 1


# Если условие выигрыша выполнено

# Функция rand_guess возвращает True

if флаг is 1 :

return True


# В противном случае функция возвращает False

else :

return False


# Код драйвера

if __ name__ = = `__main__` :

if rand_guess() is True :

print ( " Поздравляем! Ты победил. " )

else :

print ( "Извините, вы проиграли!" )

Вывод:

Выберите свой номер, чтобы принять участие в розыгрыше 8 Неверное предположение !! Выберите свой номер, чтобы принять участие в розыгрыше 9 Неверное предположение !! Выберите свой номер, чтобы принять участие в розыгрыше 0 Поздравляем !! Вы выиграли.