補正が
答えて
Changed question before rollbackのようにする必要があります:ソート異質リスト
人々が最初のバージョンに答えた後、あなたは完全にあなたの質問を変更しているようです。お願い、それはやめて。あなたは単に新しい質問をすることができます。
異種リストをソートする場合は、タプルを返すカスタムkeyを指定できます。最初の要素は、文字列の場合は0
、整数の場合は1
です。このようにして、文字列は整数の前に現れます。 オブジェクトが整数である場合、第二要素が順に整数をソートするために-x
に設定されている:
def custom_order(x):
if isinstance(x, int):
return (1, -x)
else:
return (0, x)
print(sorted([1,2,3,4,5,"a","b","c","d"], key=custom_order))
# ['a', 'b', 'c', 'd', 5, 4, 3, 2, 1]
このコードはPython2とのpython3に取り組むべきです。要素が文字列でもintでもない場合、Python3で失敗します。
オリジナル質問:ボーナスとして
>>> data = [["a","1"],["b","2"]]
>>> [[int(s) if s.isdecimal() else s for s in l] for l in data]
[['a', 1], ['b', 2]]
、それは任意の順序でとして動作します:int型
にネストされた文字列を変換あなたは、文字列looks like an integerかどうかを確認するためにternary operatorでnested list comprehensionを使用することができます任意のサイズのサブリスト:
>>> data = [["a","1"],["b","2"],["3", "c"], ["4", "5", "d"]]
>>> [[int(s) if s.isdecimal() else s for s in l] for l in data]
[['a', 1], ['b', 2], [3, 'c'], [4, 5, 'd']]
これは '[['x'、 '1/5'] ''、[here](https://stackoverflow.com/a/24384917/7207392)を参照して失敗します。 –
@PaulPanzer:優れた発言、ありがとう!だから 'str.isdigit'は正しいだろうか? –
「➊」のような数字のために私は恐れられません。 –
これを「データ」というリストに格納すると仮定すると、遅くなっている。
new_data = [[k,int(v)] for k,v in data]
詳細は下記をご参照ください:
data = [["a","1"],["b","2"]]
new_data = [[k,int(v)] for k,v in data]
print new_data
出力:
[['a', 1], ['b', 2]]
私はOPが実際に望んでいることがあるので勘違いしているので、辞書 '{k:int(v)for k、v for data}'を使用することをお勧めします:) – timgeb
@timgeb:Surprise、suprise! :D今OPが望んでいるものを見てください。 –
- 1. マテリアルデザインエレベーション補正CSS
- 2. SQLクエリ補正
- 3. GPS位置補正
- 4. アルゴリズムは、ソフトウェアキーストーン補正
- 5. ラジアルディストーション補正、カメラパラメータ、openCV
- 6. ゲームネットワークのレイテンシ補正
- 7. Opencvの色補正マトリクスでの色補正
- 8. Matlabの範囲 - ガンマ補正
- 9. jQueryの:チェーンイベント - コード補正
- 10. lucene elasticsearchによる補正
- 11. ガンマ補正およびルミナンスマスキング
- 12. ドリフト補正の使い方
- 13. 補正は、サイト名に
- 14. UITapGestureRecognizerと自動補正
- 15. "tzinfo"を置き換え、localtimeで補正します。6分補正します。
- 16. コード補完ドロップダウン候補が正しく動作しないXcode 8.0 Swift 3
- 17. Y'CbCr空間でのガンマ補正
- 18. vec2 division weirdly(自動アスペクト比補正?)
- 19. 加速度計のチルトエラー補正
- 20. QTでGDI +ガンマ補正をシミュレートする
- 21. Unity - Visual Studioの自動補完修正
- 22. 視差を補正したOpenGLのキューブマップ?
- 23. 正規の言語とポンピング補題
- 24. QRコードエンコードのリードソロモンエラー補正コードワードの計算
- 25. Terraform補間エラー:不正な置換
- 26. 拡張現実感でのデバイスロール補正
- 27. 3軸加速度計チルト補正
- 28. 正規表現補助:包含/除外
- 29. Matlabの画像のぼけ補正
- 30. シーケンス補正のためのN-Gram
あなたの入力し、どのような出力があるとは何でしょうか?リスト内のxについては、[ –
' output_list = map(lambda x:[x [0]、int(x [1])]、input_list) ] ' –
'output = [[x [0]、int(x [1])]; – bgse