<ol>
<li><p><strong>首先</strong>在将输入转换为int时,应该防止出错。有两种方法可以做到这一点</p>
<ol>
<li><p><strong>试试。。除了</strong>声明</p>
<pre><code>transfer = -1
while transfer < 0:
try:
inp = input("how many numbers would you like to transfer:?")
transfer = int(inp)
except:
print("Invalid input.")
</code></pre></li>
<li><p><a href="https://docs.python.org/3/library/stdtypes.html#str.isdecimal" rel="nofollow noreferrer">^{<cd1>}</a></p>
<pre><code>transfer = -1
while transfer < 0:
inp = input("how many numbers would you like to transfer:?")
if inp.isdecimal():
transfer = int(inp)
else:
print("Invalid input.")
</code></pre></li>
</ol></li>
<li><p>现在谈谈主要任务。有三种方法可以解决这个问题</p>
<ol>
<li><p>For循环使用<a href="https://docs.python.org/3/library/functions.html#enumerate" rel="nofollow noreferrer">^{<cd2>}</a></p>
<pre><code>for i, el in enumerate(a):
if i < transfer:
b.append(el)
else:
break
</code></pre></li>
<li><p>列表理解:</p>
<pre><code>b = [el for i, el in enumerate(a) if i < transfer]
</code></pre></li>
<li><p>列表切片:</p>
<pre><code>b = a[:transfer]
</code></pre></li>
</ol></li>
</ol>