擅长:python、mysql、java
<p>正如python文档所指出的,input函数返回一个字符串:</p>
<blockquote>
<p>input([prompt])
If the prompt argument is present, it is written to standard output
without a trailing newline. The function then reads a line from input, <strong>converts it to a string</strong> (stripping a trailing newline), and returns that. When EOF is read, EOFError is raised.</p>
</blockquote>
<p>如果您不知道这一点,并且希望进行调试和解决,那么可以执行类似于<code>print(type(Yes_No))</code>的操作,您可以看到它是一个字符串类型,因此当您计算这个表达式:<code>while Yes_No == 1</code>时,它将返回false。你知道吗</p>
<p>因此,这种情况下的解决方法是将输入行更改为</p>
<pre><code> Yes_No = int(input("Do you have the hypotenuse? For yes press 1 or for no press 2"))
</code></pre>