random

  • 必要的导入
>>> import random
  • 必要的说明

    • random伪随机

1. random.random()

  • 返回值:x in the interval [0, 1)
>>> random.random()
0.32777843950175867
>>> random.random()
0.6195138047287055

2. random.choice()

  • 格式:

random.choice(非空序列)

  • 返回值:序列中的某个值
>>> lst = [i for i in range(10)]
>>> lst
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> random.choice(lst)
4
>>> random.choice(lst)
2

3. random.shuffle()

  • 功能:随机打乱列表
  • 格式:

random.shuffle(列表)

  • 返回值:打乱顺序之后的列表
>>> lst
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> random.shuffle(lst)
>>> lst
[7, 6, 0, 5, 9, 4, 1, 2, 3, 8]
>>> random.shuffle(lst)
>>> lst
[9, 6, 4, 3, 2, 0, 8, 1, 7, 5]

4. random.randint()

  • 格式:

random.randint(a, b)

  • 返回值:random integer in range [a, b]
>>> random.randint(1, 100)
26
>>> random.randint(1, 100)
100

5. random.randrange()

  • 格式:

random.randrange(a, b)

  • 返回值:random integer in range [a, b)
  • 其实,randint 就是调用了 randrange
  • 源码
def randint(self, a, b):
"""Return random integer in range [a, b], including both end points.
""" return self.randrange(a, b + 1)
  • 举例
>>> random.randrange(1, 100)
17
>>> random.randrange(1, 100)
37

6. 造个轮子

  • 其实这个轮子在 Js 中造过

    • Js 中的 Math.random() 返回一个 (0, 1] 的小数
    • 想要一个 [a, b] 的整数,需要手动封装
  • 这回用 Python3 造一个
def random_test(start:int, stop:int) ->int:
""" 此函数不考虑输入错误的情况 """
return int(random.random() * (stop - start + 1)) + start print(random_test(1, 6))

[Python3] 032 常用模块 random的更多相关文章

  1. 常用模块(random,os,json,pickle,shelve)

    常用模块(random,os,json,pickle,shelve) random import random print(random.random()) # 0-1之间的小数 print(rand ...

  2. python常用模块——random模块

    参考博客:http://www.360doc.com/content/14/0430/11/16044571_373443266.shtml 今天突然想起python该怎么生成随机数?查了一下,贴出实 ...

  3. 【Python3之常用模块】

    一.time 1.三种表达方式 在Python中,通常有这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量.命令如下 ...

  4. python常用模块: random模块, time模块, sys模块, os模块, 序列化模块

    一. random模块  import random # 任意小数 print(random.random()) # 0到1的任意小数 print(random.uniform(-10, 10)) # ...

  5. 常用模块random/os/sys/time/datatime/hashlib/pymysql等

    一.标准模块 1.python自带的,import random,json,os,sys,datetime,hashlib等 ①.正常按照命令:打开cmd,执行:pip install rangdom ...

  6. 09 . Python3之常用模块

    模块的定义与分类 模块是什么? 一个函数封装一个功能,你使用的软件可能就是由n多个函数组成的(先备考虑面向对象).比如抖音这个软件,不可能将所有程序都写入一个文件,所以咱们应该将文件划分,这样其组织结 ...

  7. 18 常用模块 random shutil shevle logging sys.stdin/out/err

    random:随机数 (0, 1) 小数:random.random() ***[1, 10] 整数:random.randint(1, 10) *****[1, 10) 整数:random.rand ...

  8. Python全栈之路----常用模块----random模块

    程序中有很多地方需要用到随机字符,比如登陆网站的随机验证码,通过random模块可以很容易生成随机字符串. >>> import random >>> random ...

  9. 常用模块random,time,os,sys,序列化模块

    一丶random模块 取随机数的模块 #导入random模块 import random #取随机小数: r = random.random() #取大于零且小于一之间的小数 print(r) #0. ...

随机推荐

  1. Python CGI编程Ⅲ

    GET和POST方法 浏览器客户端通过两种方法向服务器传递https://www.xuanhe.net/信息,这两种方法就是 GET 方法和 POST 方法. 使用GET方法传输数据 GET方法发送编 ...

  2. Python 文件I/OⅡ

    File对象的属性 一个文件被打开后,你有一个file对象,你可以得到有关该文件的各种信息. 以下是和file对象相关的所有属性的列表: 如下实例: 以上实例输出结果: close()方法 File ...

  3. wx小程序知识点(七)

    七.小程序提速与性能优化 参考大佬vicyao的文章 https://blog.csdn.net/wetest_tencent/article/details/61196522 (1)提高页面加载速度 ...

  4. C# 在知道对象时编译json 而不调用json类

    StringBuilder sb = new StringBuilder();            sb.Append('[');                       foreach (va ...

  5. 【BZOJ4259】 残缺的字符串

    Description 很久很久以前,在你刚刚学习字符串匹配的时候,有两个仅包含小写字母的字符串A和B,其中A串长度为m,B串长度为n.可当你现在再次碰到这两个串时,这两个串已经老化了,每个串都有不同 ...

  6. Selenium 加载Chrome/Firefox浏览器配置文件

    Selenium启动浏览器时,默认是打开一个新用户,不会加载原有的配置以及插件.但有些时候我们可能需要加载默认配置. 一.Chrome浏览器 1.在Chrome浏览器的地址栏输入:chrome://v ...

  7. 将JDBC查询出的数据转化为json格式返回

    使用JDBC,json工具使用的org.json /** * ResultSet转JSON * * @param rs * @return * @throws SQLException * @thro ...

  8. Codeforces Round #201.C-Alice and Bob

    C. Alice and Bob time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

  9. 分布式-网络通信-线程(socket)

    package OIO; import java.io.IOException; import java.io.InputStream; import java.net.ServerSocket; i ...

  10. 如何基于String实现同步锁?

    在某些时候,我们可能想基于字符串做一些事情,比如:针对同一用户的并发同步操作,使用锁字符串的方式实现比较合理.因为只有在相同字符串的情况下,并发操作才是不被允许的.而如果我们不分青红皂白直接全部加锁, ...