python3实现随机数

下面我来详细讲解“Python3实现随机数”的完整攻略。

1. random库

Python中内置的random库可以生成伪随机数(Pseudorandom Numbers),它可以用来进行随机数的生成。

1.1 生成随机数(整数)

random库中生成随机数的函数有多种,下面介绍其中两个:

  • randint(a, b):生成一个[a, b]之间的整数。例如:
import random
random.randint(1, 10) # 生成1~10之间的随机整数
  • randrange(start, stop[, step]):根据start、stop和step参数,生成一个[start, stop)之间以step为步长的整数序列中的随机整数。例如:
import random 
random.randrange(0, 100, 2) # 生成0~100之间以2为步长的随机整数序列中的随机整数

1.2 生成随机数(实数)

  • random():生成[0, 1)之间的实数。例如:
import random 
random.random() # 生成[0, 1)之间的随机实数
  • uniform(a, b):生成[a, b]之间的实数。例如:
import random 
random.uniform(1.0, 2.0) # 生成1.0~2.0之间的随机实数

1.3 随机浮点数精度

  • round(x, n):将x保留n位小数。例如:
import random
x = random.uniform(1.0, 2.0)
round(x, 2) # 保留两位小数

2. numpy库

numpy库是Python中一个常用的科学计算库,其中也提供了随机数的生成函数。

2.1 生成随机数(整数)

numpy库中生成随机数的函数有多种,下面介绍其中两个:

  • numpy.random.randint(low, high=None, size=None, dtype='l'):生成一个low到high(不包括high)之间的整数,可选size参数控制生成的随机数的形状,可选dtype参数控制生成的随机数数据类型。例如:
import numpy as np
np.random.randint(0, 10, size=(2,3)) # 生成2行3列,元素值在0~10之间的随机整数矩阵
  • numpy.random.choice(a, size=None, replace=True, p=None):从给定的列表、数组等序列中生成随机数,可选size参数控制生成的随机数个数,可选replace参数控制随机数是否可重复选择,可选p参数控制序列中每个元素被选择的概率(需要和a中元素个数相同)。例如:
import numpy as np
a = ['red', 'green', 'blue']
np.random.choice(a, size=2, replace=True, p=[0.1, 0.3, 0.6]) # 从列表a中生成两个随机元素,元素可能重复,blue元素被选中的概率最大

2.2 生成随机数(实数)

  • numpy.random.rand(d0, d1, ..., dn):生成[0, 1)之间的实数,可选参数d0, d1, ..., dn控制生成的随机数的形状。例如:
import numpy as np
np.random.rand(2,3) # 生成2行3列元素值在[0, 1)之间的随机实数矩阵
  • numpy.random.uniform(low=0.0, high=1.0, size=None):生成[low, high)之间的实数,可选参数size控制生成的随机数的形状。例如:
import numpy as np
np.random.uniform(0, 1, size=(2,3)) # 生成2行3列元素值在[0, 1)之间的随机实数矩阵

至此,本篇攻略讲解了Python3中随机数生成的两种方式。下面提供一些示例说明。

示例说明

示例1

生成一个长度为10的随机整数数组,元素在10~20之间。

代码实现:

import numpy as np
np.random.randint(10, 21, size=10)

结果输出:

array([18, 18, 10, 19, 13, 15, 19, 10, 10, 19])

示例2

生成一个长度为10的随机实数数组,元素在-5~5之间,保留三位小数。

代码实现:

import numpy as np
np.round(np.random.uniform(-5, 5, size=10), 3)

结果输出:

array([ 0.097, -2.62 , -3.392,  4.402, -3.084, -0.89 , -0.173,  4.134,
        1.931,  2.245])

希望以上内容能够对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python3实现随机数 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • Python探索之pLSA实现代码

    Python探索之pLSA实现代码攻略 1. 简介 pLSA (Probabilistic Latent Semantic Analysis) 是一种概率模型,用于对文档进行主题建模。本攻略将介绍如何实现pLSA算法,同时提供两个示例说明它的用途。 2. 实现 2.1 数据准备 首先,我们需要一些文本数据用于主题建模。这里我们采用经典的20个新闻组数据集。可…

    python 2023年6月3日
    00
  • Python使用tkinter库实现文本显示用户输入功能示例

    当我们需要在Python程序中显示一些文本的时候,可以使用tkinter库来实现。下面是Python使用tkinter库实现文本显示用户输入功能示例的完整攻略。 步骤1:导入tkinter库和创建主窗口 在Python程序中,我们需要首先导入tkinter库,并初始化主窗口。 import tkinter as tk root = tk.Tk() 步骤2:创…

    python 2023年6月13日
    00
  • Python函数装饰器常见使用方法实例详解

    针对Python函数装饰器的常见使用方法,提供以下攻略: 1.什么是Python函数装饰器 Python函数装饰器实际上是一个可调用的对象,它可以用来修改甚至替换函数或方法的定义。函数装饰器和注释很像,因为它们都是放在函数块(routine)之前的。在实现时,一个装饰器定义一个包装函数(wrapper)。包装函数接受一个函数实例作为参数,并返回一个包装的函数…

    python 2023年6月2日
    00
  • python 按照固定长度分割字符串的方法小结

    下面是“python 按照固定长度分割字符串的方法小结”的攻略: 1. 使用正则表达式 使用正则表达式是较为常见的一种方法。下面是使用re模块和正则表达式来实现的示例代码: import re s = ‘hello world’ result = re.findall(‘.{1,3}’, s) print(result) # [‘hel’, ‘lo ‘, ‘…

    python 2023年6月5日
    00
  • 查看Python安装路径几种方法小结

    “查看Python安装路径几种方法小结”是一个很常见的问题,下面提供几种方式供你参考。 方法一:在终端中运行python命令 在终端中运行python命令可以查看Python的安装路径,具体步骤如下: 打开控制台,输入python,按下回车键,如下所示: $ python 进入Python交互式界面后,输入以下命令: import sys print(sys…

    python 2023年5月18日
    00
  • python实现银联支付和支付宝支付接入

    Python实现银联支付和支付宝支付接入攻略 简介 本攻略介绍使用Python实现银联支付和支付宝支付接入的具体步骤和示例代码。Python是一种高级编程语言,编写Python程序可以快速实现各种业务需求。 银联支付接入 步骤 银联支付接入的具体步骤如下: 1. 开通银联商户账号 开通银联商户账号可通过银联官网申请,获取商户号、私钥和公钥等重要配置信息。 2…

    python 2023年6月3日
    00
  • python学习print中format的用法示例

    下面是关于“python学习print中format的用法示例”的完整攻略。 一、概述 在Python中,使用print函数输出信息是很常见的操作,其中最常用的方式是直接输出字符串或变量,但是有些时候我们需要输出的信息更加复杂,需要采用格式化输出的方式。这时就可以使用format()函数。format()函数支持将指定的数据插入到字符串的指定位置中,从而进行…

    python 2023年6月5日
    00
  • python reverse反转部分数组的实例

    下面是关于Python中反转部分数组的攻略。 什么是反转部分数组? 反转部分数组是指将一个数组中的一部分元素进行顺序颠倒的操作。比如说,一个数组中包含 [1, 2, 3, 4, 5] 这些元素,我们想要对其中的前三个元素进行反转,那么反转后的数组为 [3, 2, 1, 4, 5]。 使用Python反转部分数组的方法 在Python中,我们可以通过对切片进行…

    python 2023年6月6日
    00
合作推广
合作推广
分享本页
返回顶部