Python随机选择列表中的某个数/随机选择范围中的某个数

1. uniform( ) 

random.uniform(x, y) 方法将随机生成一个浮点数,它在 [x,y] 范围内。

也就是说,是从一个范围里选择一个浮点数。

# _*_ coding: utf-8 _*_
import random
random.uniform(x, y)
# _*_ coding: utf-8 _*_
from random import uniform
uniform(x, y)
from random import uniform
print(uniform(6,7))
# 6.304576901378101
  • x -- 随机数的最小值,包含该值。
  • y -- 随机数的最大值,不包含该值。
  • 返回一个浮点数

2. choice()

random.choice()方法用于从序列中获取一个随机元素,list, tuple, 字符串都可以使用

也就是说,从一个列表里选择一个元素

在列表中随机挑选一个数

from random import choice
List=[1,2,3,4]
choice(List)
print(choice(List))

# 第一次运行:4
# 第二次运行:1

在集合中随机挑选一个数

from random import choice
Set=set([1,2,3,4,5])
choice(list(Set))
print(choice(list(Set)))

# 第一次运行:4
# 第二次运行:3

 在字符串列表里随机挑一个字符

print(random.choice("学习Python")) # o
print(random.choice(["xunshui", "is", "a", "handsome", "boy"])) #xunshui
print(random.choice(("Hello", "World"))) # Hello

3、 random( )

random.random( ),用于生成范围在[0, 1)之间的随机实数。

也就是说,随机生成一个[0, 1)之间的数,只在这个范围内。

import random
print(random.random())
# 0.6453234223262438
print(random.random(1))
# TypeError: Random.random() takes no arguments (1 given)

4、randint(a, b)

random.randint(a, b),用于生成一个指定范围[a, b]内的整数。

也就是说,生成一个整数。

print(random.randint(4,7))
# 5

5、randrange([start,], stop [ ,step])

random.randrange([start,], stop [ ,step]),用于返回指定递增基数集合中的一个随机数,基数默认值为1。

start -- 指定范围内的开始值,包含在范围内。
stop -- 指定范围内的结束值,不包含在范围内。
step -- 指定递增基数。

print(random.randrange(10, 100, 2))
# 结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数
# 16
print(random.randrange(10, 100,1))
# 结果相当于random.randint(10,100)
# 87

6、shuffle(list [, random])

random.shuffle(list [, random]),用于将一个列表中的元素打乱。

也就是说,对列表进行随机排序

list = [20, 16, 10, 5]
random.shuffle(list)
print("随机排序列表 : ", list)
# 随机排序列表 :  [10, 20, 16, 5]

7、sample(sequence, k)

random.sample(sequence, k),用于从指定序列中随机获取指定长度的切片。

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5)  # 从list中随机获取5个元素,作为一个片断返回
print(slice)
# [2, 8, 7, 5, 1]

参考:

(1条消息) python指定范围的随机数_python random随机数、numpy.random随机数_漫荹雲端149839的博客-CSDN博客

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值