擅长:python、mysql、java
<p>实际上,一行中可以有多个if语句。例如你的代码</p>
<pre><code>string = input()
if string.isnumeric: pass
else: if string == 'tesr': print('test') else: print('stop')
</code></pre>
<p>可以写成一行字。你知道吗</p>
<pre><code>if not string.isnumeric(): print('test') if (string == 'tesr') else print('stop')
</code></pre>
<p>或者如果你愿意的话</p>
<pre><code>None if string.isnumeric() else print('test') if (string == 'tesr') else print('stop')
</code></pre>
<p>不过,我同意@timgeb在评论中的观点——可读性才是最重要的!你知道吗</p>
<p><strong>编辑</p>
<p>既然你编辑了你的问题,从“为什么我不能把下面的代码写成一行代码”到“我想尽量压缩我的代码”。为什么Python中不允许以下内容?“。。。因为缩进对python很重要,所以您认为下面的代码会做什么:</p>
<pre><code>if x == 1: print(1) if x == 3: print(2) else: print(3)
</code></pre>
<p>什么?你可以认为这段代码</p>
<pre><code>if x == 1: print(1)
if x == 3: print(2)
else: print(3)
</code></pre>
<p>或者</p>
<pre><code>if x == 1:
print(1)
if x == 3: print(2)
else: print(3)
</code></pre>
<p>那你期望什么呢?这将是一个混乱的局面,因为没有人会知道一些东西是如何被解析的。你知道吗</p>