zoukankan      html  css  js  c++  java
  • Python学习笔记(随机数)

    random模块的作用是产生随机数。

    import random

    num = random.randint(1,100)

    random.randint(a, b)可以生成一个a到b间的随机整数,包括a和b。

    a、b都必须是整数,且必须b≥a。当等于的时候,比如:

    random.randint(3, 3)

    的结果就永远是3

    除了randint,random模块中比较常用的方法还有:

    random.random()

    生成一个0到1之间的随机浮点数,包括0但不包括1,也就是[0.0, 1.0)。

    random.uniform(a, b)

    生成a、b之间的随机浮点数。不过与randint不同的是,a、b无需是整数,也不用考虑大小。

    random.uniform(1.5, 3)

    random.uniform(3, 1.5)

    这两种参数都是可行的。

    random.uniform(1.5, 1.5)永远得到1.5。

    random.choice(seq)

    从序列中随机选取一个元素。seq需要是一个序列,比如list、元组、字符串。

    random.choice([1, 2, 3, 5, 8, 13]) #list

    random.choice('hello') #字符串

    random.choice(['hello', 'world']) #字符串组成的list

    random.choice((1, 2, 3)) #元组

    都是可行的用法。

    random.randrange(start, stop, step)

    生成一个从start到stop(不包括stop),间隔为step的一个随机数。start、stop、step都要为整数,且start<stop。

    比如:

    random.randrange(1, 9, 2)

    就是从[1, 3, 5, 7]中随机选取一个。

    start和step都可以不提供参数,默认是从0开始,间隔为1。但如果需要指定step,则必须指定start。

    random.randrange(4) #[0, 1, 2, 3]

    random.randrange(1, 4) #[1, 2, 3]

    random.randrange(start, stop, step)其实在效果上等同于

    random.choice(range(start, stop, step))

    random.sample(population, k)

    从population序列中,随机获取k个元素,生成一个新序列。sample不改变原来序列。

    random.shuffle(x)

    把序列x中的元素顺序打乱。shuffle直接改变原有的序列。

    以上是random中常见的几个方法。如果你在程序中需要其中某一个方法,也可以这样写:

    from random import randint

    randint(1, 10)

  • 相关阅读:
    20190318-使用类做一个简单的图书馆管理系统
    20190313-面向对象的简单理解
    20190313-时间和日期-Time
    20190305-leetcode题目有效的括号
    20190227-做一个简易代码统计工具
    20190226-利用序列化完成小型记账程序
    20190221-文件操作
    20190131-文件操作命题练习
    Excel技巧—如何从重复行中取某一行
    Excel技巧—轻松搞定多级联动下拉列表
  • 原文地址:https://www.cnblogs.com/seven000/p/6958389.html
Copyright © 2011-2022 走看看