擅长:python、mysql、java
<p>你真的不应该用那种方式检查类型</p>
<p>代码不起作用的原因是:</p>
<pre><code>>>> type(type(str))
<class 'type'>
>>> type(str)
<class 'type'>
</code></pre>
<p>如您所见,<code>type(str)</code>的打印表示形式看起来像一个可以与之进行比较的字符串,但是表达式<code>type(self.radius) == "<class 'str'>":</code>将左手边的<code>type</code>与右手边的<code>str</code>进行比较,后者永远不会求值为真。检查某个对象是否是特定类型的方法是使用<code>isinstance</code>,如下所示:</p>
^{pr2}$
<p>这正如预期的那样工作,你的代码其余部分都很好,只需更改类型检查。在</p>