голосование
PHP
jQuery
Firebird
BASH
HTML
Ресурсы
GIT
SEO
Oracle
Python
Проголосуйте за категорию!
счётчик
Яндекс.Метрика

Как сгенерировать последовательность чисел модуль random Python

Для хешей и капч часто нужно генерировать последовательность чисел. Можно обойтись без модуля random для генерации чисел. Вы можете использовать циклы для наполнения строки. Также можно использовать элементы массива для случайного вывода. Все эти пути сложны и идти этой дорогой не стоит. Вы просто напишите много кода или запутаетесь. Давайте рассмотрим модуль random с его функциями. Модуль обладает большим набором функций.

Рассмотрим первый пример. random.random() возвращает случайное вещественное число, находящееся в диапазоне от 0.0 до 1.0


#!/usr/bin/python3
import random

number = random.random()
print(number)
'''
вывод:
0.7906021185906985
'''

Функция randint возвращает случайное целое число x в диапазоне a <= x <= b. Если вам нужно сгенерировать последовательность чисел от 1000 до 9999, то вам эта функция подойдёт.


#!/usr/bin/python3
import random

number = random.randint(10, 30)  
print(number)
'''
вывод: 13
'''

Функция randrange(<Конец>) возвращает случайное целое число из определенного набора чисел. Если передадите число <Конец> в для входного параметра, то оно и будет ограничителем. Будут генерироваться числа от 0 до 1000.


#!/usr/bin/python3
import random

number = random.randrange(1000)
print(number)
'''
вывод: 691
'''

randrange(<Начало>, <Конец>) возвращает случайное целое число из диапазона чисел. Диапазон имеет <Начало> и <Конец>. В примере ниже будут генерироваться числа от 1000 до 9999. Обратите внимание на то, что сгенерированное число будет состоять из 4 цифр.


#!/usr/bin/python3
import random

number = random.randrange(1000,9999)
print(number)
'''
вывод: 2213
'''

Этот пример похож на предыдущий. Тут применяется шаг в 100 единиц. Обратите внимание что на конце сгенерированного числа будет два нуля 00.


#!/usr/bin/python3
import random

number = random.randrange(1000,9999, 100)
print(number)
'''
вывод: 9600
'''

random.shuffle(iter[, random=random()]). Функция перемешивает элементы списка. Вы можете сгенерировать хеш из заданного набора символов. Вы можете использовать спецсимволы: $#!%.

  • iter – список
  • random – функция возвращает случайное вещественное число

#!/usr/bin/python3
import random

numbers = [1, 2, 3, 4, 5, 6, 7, 8]
random.shuffle(numbers)
print(numbers)
'''
вывод: 
[5, 8, 6, 7, 4, 2, 3, 1]
'''

Функция random.choice(iter). Возвращает случайный элемент из непустой последовательности. В качества последовательности можете использовать списки, кортежи.


#!/usr/bin/python3
import random

numbers = [1, 2, 3, 4, 5, 6, 7, 8]
random_number = random.choice(numbers)
print(random_number)
'''
вывод: 
8
'''

Функция random.sample(iter, len) возвращает список случайных элементов последовательности, из указанного количества элементов. Идеально подходит для хешей из чисел и букв. Параметры:

  • iter – последовательность
  • len (int) – количество элементов

#!/usr/bin/python3
import random

hash = random.sample('123456789qwertyuiopasdfghjklzxcvbnm', 10)
str = ''.join(hash)
print(str)
'''
вывод:
js6ycwnqpo
'''

Функция random.uniform(<Начало>, <Конец>) возвращает случайное вещественное число, находящееся в диапазоне от <Начала> до <Конца>.


#!/usr/bin/python3
import random

num = random.uniform(1,4)
print(num)
'''
вывод:
1.8834060094647942
'''
просмотры: 109, уровень: лёгкий уровень, рейтинг: 0, дата: 2017-09-13 08:20:37
проголосовать:

Комментарии:






поиск
реклама
банеры
домен RU всего за 99 рублей
http://www.2domains.ru домен RU домен RU всего за 99 рублей
http://ping-admin.ru/index_5659.html мониторинг сайтов сервис мониторинга работы сайта, мониторим HTTP, HTTPS, FTP, MYSQL, PostgreSQL, POP3, SMTP, IMAP
https://my.colobridge.net/aff.php?aff=047 серверы vps/vds облачный vps/vds сервер colobridge от 9,9 евро в месяц