求把这段php代码转成python的代码,谢谢!
<code>//倒序排序 function my_sort($a,$b) { if ($a==$b) return 0; return ($a5,'bbb'=>3,'ccc'=>4); usort($arr,"my_sort"); echo json_encode($arr); </code>
简单说就是数组倒序排序,然后转成json格式。
回复内容:
求把这段php代码转成python的代码,谢谢!
<code>//倒序排序 function my_sort($a,$b) { if ($a==$b) return 0; return ($a5,'bbb'=>3,'ccc'=>4); usort($arr,"my_sort"); echo json_encode($arr); </code>
简单说就是数组倒序排序,然后转成json格式。
PHP 中的 associative array 是一種 ordered mapping (有序映射).
這代表了 Python 中的 dictionary 並非完全相等於 associative array.
其次, json 據我所知並不支援 ordered mapping,所以如果你想要完成這項任務可能要:
使用 Python 中的有序映射對象:
OrderedDict
(請參考OrderedDict)將
OrderedDict
轉為list
再轉為json
到時候要使用該項資料時,必須從
json
中 load 進list
再轉回OrderedDict
以下是 Python3 的代碼讓你參考:
代碼:
<code>import json from collections import OrderedDict # using OrderedDict arr = {"aaa":5,"bbb":3,"ccc":4, "ddd":7} arr = OrderedDict(sorted(arr.items(), key=lambda item: item[1], reverse=True)) # or you can create an OrderedDict directly: # arr = OrderedDict([('aaa', 5), ('bbb', 3), ('ccc', 4), ('ddd', 7)]) print(arr) # list arr = list(arr.items()) print(arr) # json dump json_arr = json.dumps(arr) print(json_arr) # json load arr = OrderedDict(json.loads(json_arr)) print(arr) </code>
結果:
<code>OrderedDict([('ddd', 7), ('aaa', 5), ('ccc', 4), ('bbb', 3)]) [('ddd', 7), ('aaa', 5), ('ccc', 4), ('bbb', 3)] [["ddd", 7], ["aaa", 5], ["ccc", 4], ["bbb", 3]] OrderedDict([('ddd', 7), ('aaa', 5), ('ccc', 4), ('bbb', 3)]) </code>
P.S. 任何不清楚的地方都歡迎用評論告訴我,我們可以再討論
import json arr={"aaa":5,"bbb":3,"ccc":4} print json.dumps(sorted(arr.values(),reverse=True))#'[5, 4, 3]'
python代码(改造后)
<code>#!/usr/bin/env python #encoding:utf-8 import json if __name__ == '__main__': myDict = {'aaa':5,'bbb':6,'ccc':777} outDic = sorted(myDict.iteritems(), key=lambda asd: asd[1], reverse=True) print '排序前的字典,类似于php的array' print myDict print '排序后json输出:' print json.dumps(outDic) </code>
输出:
<code>/System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7 /Users/luyh/www/python/lesson1/pysort.py 排序前的字典,类似于php的array {'aaa': 5, 'bbb': 6, 'ccc': 777} 排序后json输出: [["ccc", 777], ["bbb", 6], ["aaa", 5]] Process finished with exit code 0 </code>

thesecrettokeepingaphp-poweredwebsterunningsmootlyunderheavyloadinvolvesseveralkeystrategies:1)emform opcodecoduceSciptionexecutiontime、2)aatabasequerycachingwithiThing withiThistolessendavasoload、

コードをより明確かつ維持しやすくするため、依存関係が関心(DI)に注意する必要があります。 1)DIは、クラスを切り離すことにより、よりモジュール化されます。2)テストとコードの柔軟性の利便性を向上させ、3)DIコンテナを使用して複雑な依存関係を管理しますが、パフォーマンスの影響と円形の依存関係に注意してください。

はい、最適化されたAphPossibleandessention.1)CachingingusapCutoredatedAtabaseload.2)最適化、効率的なQueries、およびConnectionPooling.3)EnhcodeCodewithBultinctions、Avoididingglobalbariables、およびUsingopcodeching

keyStrategIestsoSificlyvoostphpappliceperformanceare:1)useopcodecachinglikeToreexecutiontime、2)最適化abaseの相互作用とプロペラインデックス、3)3)構成

aphpDependencyInjectionContaineriSATOULTAINATINAGECLASSDEPTINCIES、強化測定性、テスト可能性、および維持可能性。

SELECT DEPENTENCINGINOFCENT(DI)大規模なアプリケーションの場合、ServicElocatorは小さなプロジェクトまたはプロトタイプに適しています。 1)DIは、コンストラクターインジェクションを通じてコードのテスト可能性とモジュール性を改善します。 2)ServiceLocatorは、センター登録を通じてサービスを取得します。これは便利ですが、コードカップリングの増加につながる可能性があります。

phpapplicationscanbeoptimizedforspeedandEfficiencyby:1)enabingopcacheinphp.ini、2)PreparedStatementswithpordatabasequeriesを使用して、3)LoopswithArray_filterandarray_mapfordataprocessing、4)の構成ngincasaSearverseproxy、5)

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

Dreamweaver Mac版
ビジュアル Web 開発ツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
