问题陈述:
编写一个程序,打印“我爱”后跟一个单词:附加单词应该是 'dogs' 的概率为 80%,'cats' 的概率为 10%,而 'bats' 的概率为 10%。这是一个示例输出:
I love bats
Run Code Online (Sandbox Code Playgroud)
例子
以下程序以 20% 的概率打印出单词 'dog'(Python 代码)
import random
prob = 0.20
if random.random() < prob:
print('dog')
Run Code Online (Sandbox Code Playgroud)
为什么它以 20% 的概率打印“狗”?这个想法是在 0.00 和 1.01 之间绘制一个随机值——这就是 random 模块中的函数 random() 所做的——并检查它是否小于以十进制数表示的所需概率值。例如,随机值落在 0.00 和 0.50 之间的概率为 50%。该值介于 0.50 和 1.0 之间的概率也是 50%。它落在 0.00 和 0.20 之间的概率是 20%,依此类推。AI 要素的原始练习:构建 AI,第 1 章
我不明白的是:
我只需要打印一个词:蝙蝠、猫或狗。当猫和蝙蝠的概率完全相同 10% 时,我如何打印一个。一,如果条件不能0.10和0.10之间的区别。
我正在使用此代码,并且在另一个窗口中打开了一个可视化/图表,在 ipython shell 中没有任何问题:
In [1]: import numpy as np
In [2]: import matplotlib.pyplot as plt
In [3]: matplotlib
Using matplotlib backend: Qt5Agg
In [4]: x = np.linspace(0, 3*np.pi, 500)
In [5]: plt.plot(x, np.sin(x**2))
Out[5]: [<matplotlib.lines.Line2D at 0x7fb6d69ab470>]
In [6]:
Run Code Online (Sandbox Code Playgroud)
检查此屏幕截图。如果我使用 matplotlib 以外的任何库,那么我不会得到任何可视化/图表。我确实在笔记本中得到了它,但在 ipython shell 中却没有。难道我做错了什么 ?
In [7]: poly = Polygon([(0,0), (0,5), (5,5), (5,0)])
In [8]: print(poly)
POLYGON ((0 0, 0 5, 5 5, 5 0, 0 0))
In [9]: print('area', poly.area)
area 25.0
In [10]: display(poly) …Run Code Online (Sandbox Code Playgroud)