回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p><strong>问题</strong></p>
<p><strong>问题链接:</strong><a href="https://www.codewars.com/kata/52597aa56021e91c93000cb0/train/python" rel="nofollow noreferrer">https://www.codewars.com/kata/52597aa56021e91c93000cb0/train/python</a></p>
<p>写一个算法,取一个数组并将所有零移到末尾,保留其他元素的顺序</p>
<p><code>move_zeros([false,1,0,1,2,0,1,3,"a"]) # returns[false,1,1,2,1,3,"a",0,0]</code></p>
<p><strong>我的代码:</strong></p>
<pre class="lang-py prettyprint-override"><code>def move_zeros(array):
zero_count = array.count(0)
array1 = list(filter(lambda a: a != 0, array)) + [0 for i in range(zero_count)]
return array1
</code></pre>
<p><strong>样本测试:</strong></p>
<pre class="lang-py prettyprint-override"><code>Test.describe("Basic tests")
Test.assert_equals(move_zeros([1,2,0,1,0,1,0,3,0,1]),[ 1, 2, 1, 1, 3, 1, 0, 0, 0, 0 ])
Test.assert_equals(move_zeros([9,0.0,0,9,1,2,0,1,0,1,0.0,3,0,1,9,0,0,0,0,9]),[9,9,1,2,1,1,3,1,9,9,0,0,0,0,0,0,0,0,0,0])
Test.assert_equals(move_zeros(["a",0,0,"b","c","d",0,1,0,1,0,3,0,1,9,0,0,0,0,9]),["a","b","c","d",1,1,3,1,9,9,0,0,0,0,0,0,0,0,0,0])
Test.assert_equals(move_zeros(["a",0,0,"b",None,"c","d",0,1,False,0,1,0,3,[],0,1,9,0,0,{},0,0,9]),["a","b",None,"c","d",1,False,1,3,[],1,9,{},9,0,0,0,0,0,0,0,0,0,0])
Test.assert_equals(move_zeros([0,1,None,2,False,1,0]),[1,None,2,False,1,0,0])
Test.assert_equals(move_zeros(["a","b"]),["a","b"])
Test.assert_equals(move_zeros(["a"]),["a"])
Test.assert_equals(move_zeros([0,0]),[0,0])
Test.assert_equals(move_zeros([0]),[0])
Test.assert_equals(move_zeros([False]),[False])
Test.assert_equals(move_zeros([]),[])
</code></pre>
<p><strong>运行后的我的输出:</strong></p>
<ul>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p><strong>['a',b',None',c',d',1,1,3,[],1,9,{},9,0,0,0,0,0,0,0,0,0,0,0]应该等于['a',b',None',c',d',1,False,1,3,[],1,9,9,0,0,0,0,0]</strong>/p></li>
<li><p><strong>[1,无,2,1,0,0,0]应该等于[1,无,2,False,1,0,0]</strong></p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
<li><p>测试通过</p></li>
</ul>
<p><strong>我的问题:</strong></p>
<p>为什么我的答案没有通过这两项测试</p>