def selection(alist):
sorted_list = []
while alist:
minimum = alist.pop(alist.index(min(alist)))
sorted_list.append(minimum)
print(sorted_list)
return sorted_list
a = [54,35,23,86,3546,87,43,7,2]
selection(a)
print(selection(a))
1
A
答えて
0
変数に関数呼び出しを代入してみてください。これにより、データを保存し、必要なときにデータを呼び出すことができます。
def selection(alist):
sorted_list = []
while alist:
minimum = alist.pop(alist.index(min(alist)))
sorted_list.append(minimum)
print(sorted_list)
return sorted_list
a = [54,35,23,86,3546,87,43,7,2]
value = selection(a)
print(value)
0
selection
がa
のすべての値を飛び出しているので、それは起こっています。 a
をそのまま使用したい場合は、一時的な配列に複製し、この配列のみを操作する必要があります。
def selection(alist):
temp = list(alist)
sorted_list = []
while temp:
minimum = temp.pop(temp.index(min(temp)))
sorted_list.append(minimum)
return sorted_list
はその後a
は同じまま:あなたの目標は、この配列をソートするだけで、あなたがyourslefによってソートアルゴリズムを書いていないために気にしない
>>> selection(a)
[2, 7, 23, 35, 43, 54, 86, 87, 3546]
>>> print(selection(a))
[2, 7, 23, 35, 43, 54, 86, 87, 3546]
>>> a
[54, 35, 23, 86, 3546, 87, 43, 7, 2]
場合、それはおそらく良いだろうアイデア(とはるかに効率的)のpythonの組み込みsorted
機能を使用するには:あなたは永久にソートしたい場合は
>>> a = [54,35,23,86,3546,87,43,7,2]
>>> sorted(a)
[2, 7, 23, 35, 43, 54, 86, 87, 3546]
>>> a
[54, 35, 23, 86, 3546, 87, 43, 7, 2]
を0使用a.sort()
:
>>> a = [54,35,23,86,3546,87,43,7,2]
>>> a.sort()
>>> a
[2, 7, 23, 35, 43, 54, 86, 87, 3546]
+0
Woops、bad indention - 固定:)ありがとう! – Megabeets
関連する問題
- 1. Datetimepickerは値として空の文字列を返します
- 2. C++ GetModuleFileNameが正しい文字列を返しません
- 3. php関数は空の文字列を返します。 echoは文字列を正しく出力します。
- 4. なぜこれが空の文字列を返しますか?
- 5. PHPのFILEINFO_MIMEオプションが空の文字列を返します
- 6. PHPのreadInnerXMLが空の文字列を返します
- 7. Spring JDBC ResultSetMetaData "getColumnName()"メソッドが空の文字列を返します
- 8. zend:baseUrlビューヘルパーが空の文字列を返します
- 9. Crystalレポートが文字列または数値を返します
- 10. カスタムクエリ文字列パーサーが不正な結果を返します
- 11. PHPのarray_searchが機能しない(空の文字列を返します)
- 12. 関数はreturn文の前に空のオブジェクトを返します
- 13. 文字列== ""なら空の配列を返します
- 14. Jsonが文字を返します
- 15. 繰り返し文字から隣接する等しい文字がない可能なすべての文字列を返します。文字列
- 16. JavaScriptを文字列で返します
- 17. request.jsonは文字列を返します
- 18. REST web scrapeが空の文字を返します
- 19. JavaScript window.location.search.substr(1)は空の文字列として返します
- 20. SOAPUIスクリプトアサーション、(文字列として返します)、文字列
- 21. QWebEnginePage:toHtmlは空の文字列を返します
- 22. Python lxml etree.tostring()はmod_wsgiで空の文字列を返します
- 23. openssl_encryptは空の文字列を返します
- 24. c_str()は空文字列を返します
- 25. stream_get_contents()は空の文字列を返します
- 26. realpathは空の文字列を返します
- 27. PHP socket_readは空の文字列を返します
- 28. Environment.GetFolderPath(Environment.SpecialFolder.InternetCache)はASP.Netプロジェクトで空の文字列を返します
- 29. file_get_contentsは354バイトの空の文字列を返します。
- 30. Laravel 5 getClientOriginalExtension()は空の文字列を返します
実行しているものに合わせてインデントを更新できますか?それが間違って入力されたのか、インデントが問題の一部であるのかを判断するのは難しいです。 – ryachza
2回目の呼び出し時に関数を2回呼び出すので、 'a'はすでに空です。各関数呼び出しに対して 'a'のコピーを作成するか、' section'を一度しか呼び出しません。 –
あなたは、リストを変更して、最小の要素を順番に「ポップ」しています。これは**信じられないほど非効率的なものですが、とにかくあなたが何を記述しているのかがはっきりしていませんが、 'a(selection)(a)'を2度目に呼び出すと 'a'が空になりますリスト。 –