show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
- 这次主要是完成加法程序
- 输入加数和被加数生成求和公式和结果
- 先构思
- 一点点深入
- 不断进行修改
- 可以让程序自动生成随机数
- 并且相加吗?
- 先去游乐场试试
- 导入 random 包
- 看起来 random.randint
- 有两个参数
- 返回值类型是整数
- 范围在两个数之间
- 包括两个数
- 确实可以返回数字
- 确实左右两个端点都能到达
- 可以离开游乐场去写 py 程序了
- 现在需要生成两个十以内数字
- 然后显示相加结果
- 编写程序
- 测试成功
- 注意哦
- 文件可以叫做 random.py 吗?
- 会报错
- 为什么?
- 还记得以前我们做的那个 input、process、output 的主控程序么?
- 程序会在本地先找 random.py
- 找到了本地这个文件
- 就不去找真正需要导入的类库 random 了
- 可是在当前文件夹 random.py 中找不到 randint 函数
- 所以就报错了
- 我们的名字不可以和类名相同
- 不可以和包名相同
- 最好也不和函数名相同
- 那当年 input、process、output 的主控程序中
- input不就是和函数名相同么
- 为什么还好用呢?
- 当年年少无知
- 最好还是不要用 input.py 这样的名字
- 可为什么他还能用呢?
- 在 input.py 中使用的 input 函数
- input 是内置函数
- 不需要引入任何包
- 所以可以直接用
- 在引入 input.py 的 process.py 中
- 他要用的刚好是本地 input.py 中的 a 和 b
- 所以执行结果不受影响
- 不过,确实要注意重复的问题、
- 包名
- 类名
- 函数名
- 变量名
- 文件名
- 写的时候多加小心
- 出了错,也要有大致思路
- 容易误会不妨改个名字
- 真的是随机十以内加法
- 随机函数是不是绝对产生的是随机的数字呢?
- 如果上限和下限被钳住
- 那么随机数也就是固定的数值了
- 如果下限高于上限呢?
-
程序报错
- 在/usr/lib/python3.8/random.py
- 反向搜索empty range for randrange
-
暴露位置
- randint 在 /usr/lib/python3.8/random.py 248 行
- randrange 在 /usr/lib/python3.8/random.py 226 行
-
可以找到具体被调用的函数 randint
- 也可以找到具体报错的位置 226 行
- 天哪 😱
- 随机也是有章可循的
- 如果把时间控制住了
- 那么得到的随机数就也许也是可以控制住的
- 这次主要是随机变量的生成
- 使用 random 包中的 randint(a,b)方法
- 生成[a,b]范围中的整数
- 包括 a,b
- 这真的可以生成随机数
- 你感到随机带来的快乐了么?
- 如果我想生成 6 位数字密码可以么?
- 下次再说 👋