玖叶教程网

前端编程开发入门

python内置模块random

random模块是随机数模块,用来获取随机数

import random
print(random.random())#随机获取0-1之间的小数
print(random.uniform(1,2))#随机获取指定区间的小数
print(random.randint(1,10))#随机生成指定区间的整数[1-3]
print(random.randrange(0,11,2))#随机获取指定区间的整数,步长为2[0,11)
print(random.choice('abdcdda'))#随机获取字符串中的一个字符
print(random.sample('abdcdda',3))#随机获取字符串中指定数量的字符,并转换成list形式输出
print(random.sample(['a','b','c','d','e','f','g','h','i','j'],3))

python编程:random

随机输出晚餐吃什么

list1 = [
    "螺蛳粉", "老友粉", "烧鸭粉", "猪脚饭", "桂林米粉", "叉烧粉", "越南鸡肉米线", "卤粉",
    "鸡杂粉", "潮汕牛肉粉", "酸辣粉", "炸鸡", "饺子", "馄饨", "抄手", "冒菜",
    "麻辣烫", "火锅", "川菜", "炒菜", "快餐", "零食", "椰子鸡", "烤肉",
    "烧烤", "串串", "早茶", "蛋糕", "凉皮", "肉夹馍", "黄焖鸡", "煲仔饭",
]
import random
print(random.choice(list1))

输出:
鸡杂粉

Python的random模块常用方法技巧

# coding: utf-8
# ********************************************************
# 如何从列表中删除重复项?
# ********************************************************
import random
import copy

# 构造数据
NUMBERS = 10000
list_data = [None] * NUMBERS
for i in range(NUMBERS):
    list_data[i] = random.randint(1, NUMBERS)

list_data_deepcopy = copy.deepcopy(list_data)

# 方法1:如果列表的所有元素都可以用作设置键(即:它们都是 hashable),将列表转换为集合,从而删除重复项,然后返回到列表中。
list_data.sort()

print(len(list_data))  # 10000

sorted_list_data = list(set(list_data))

print(len(sorted_list_data))  # 6341

# 方法2:如果您不介意重新排序列表,请对其进行排序,然后从列表末尾进行扫描,删除重复项:
mylist = list_data_deepcopy

if mylist:
    mylist.sort()
    last = mylist[-1]
    for i in range(len(mylist) - 2, -1, -1):
        if last == mylist[i]:
            del mylist[i]
        else:
            last = mylist[i]

print(len(mylist))  # 6341

# ********************************************************
# 如何从序列中随机获取元素?
# choice(S) 从给定的序列中随机选择一个元素。
# ********************************************************
import random

list1 = ['许银川', '胡荣华', '李来群', '柳大华', '赵国荣', '王天一', '郑惟桐', '杨官璘']
list2 = [None] * 100000
for i in range(100000):
    list2[i] = random.choice(list1)

for i in list(set(list2)):
    print(f"{i} : {list2.count(i)}")
    # or
    # print("{0} : {1}".format(i, list2.count(i)))

# 输出:
# 杨官璘 : 12610
# 赵国荣 : 12578
# 郑惟桐 : 12533
# 胡荣华 : 12446
# 王天一 : 12504
# 许银川 : 12432
# 柳大华 : 12416
# 李来群 : 12481

# ********************************************************
# 如何对列表进行原地重排,也就是说随机打乱?
# ********************************************************
import random

list1 = [i for i in range(10)]
print(list1)  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(list1)
print(list1)  # [3, 7, 6, 5, 4, 1, 9, 8, 0, 2]

# ********************************************************
# random随机种子sed()函数
# ********************************************************
# seed() 方法改变随机数生成器的种子,可以在调用其他随机模块函数之前调用此函数。
# 可以看到当seed()没有参数时,每次生成的随机数是不一样的,而当seed()有参数时,
# 每次生成的随机数是一样的,同时选择不同的参数生成的随机数也不一样。
import random

# 随机数不一样
random.seed()
print('随机数1:', random.random())
random.seed()
print('随机数2:', random.random())

# 随机数一样
random.seed(1000)
print('随机数3:', random.random())
random.seed(1000)
print('随机数4:', random.random())
random.seed(2000)
print('随机数5:', random.random())

# 随机数1: 0.1023873279714167
# 随机数2: 0.12720145506924618
# 随机数3: 0.7773566427005639
# 随机数4: 0.7773566427005639
# 随机数5: 0.4484570179105285

random随机生成10个数,然后冒泡排序

随机生成0到100之间的10个随机数,然后使用冒泡排序将这10个数按从小到大的顺序排序

生成10个随机数

import random
num = range(0, 100) # 范围在0到100之间,需要用到range()函数。
nums = random.sample(num, 10) # 选取10个元素
print(nums) 

四十、Python模块random: 伪随机数据生成与随机元素抽取

Python内置模块random生成随机数

Python的random内置模块主要包含用来生成伪随机数的各种变量和函数。

先来看看random模块都提供了哪些功能变量和函数:

每日一练:猜数字游戏

猜数字游戏,规则如下:

Python中的Shuffle:轻松打乱数据顺序的秘诀!

导语:在Python编程中,你是否遇到过需要随机打乱数据顺序的需求?不用担心,Python的shuffle函数帮你轻松解决问题!本文将带你了解shuffle函数的原理和用法,让你轻松掌握这一利器!

一、什么是Shuffle?

python语言-之random模块

random模块

random() 方法返回随机生成的一个实数,它在[0,1)范围内。

>>> help(random.random)

Python 随机(random)模块的不可预测之美

1 . 概念

1.1 真、伪随机数

Python中Random库带你走进奇妙的随机事件世界

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言