ホームページ >バックエンド開発 >Python チュートリアル >PythonプログラミングのJSON形式変換、else文の柔軟な使い方、setdefaultメソッドの詳細解説
この記事では、JSON形式の変換、elseステートメントの使用、setdefaultメソッドの使用など、Pythonプログラミングについてまとめた3つの一般的なスキルを主に紹介します。必要な友人はそれを参照してください
Pythonで見ることができます。コード ここで、いくつかの一般的なトリックを簡単にまとめてみましょう。
json StringFormatting
Json 文字列は Web アプリケーションを開発するときによく使用されますが、比較的長い json 文字列は可読性が低く、内部の構造を確認するのは簡単ではありません。 このとき、Pythonを使うとjson文字列を綺麗に出力できます。
root@Exp-1:/tmp# cat json.txt {"menu": {"breakfast": {"English Muffin": {"price": 7.5}, "Bread Basket": {"price": 20, "desc": "Assortment of fresh baked fruit breads and muffins"}, "Fruit Breads": {"price": 8}}, "drink": {"Hot Tea": {"price": 5}, "Juice": {"price": 10, "type": ["apple", "watermelon", "orange"]}}}} root@Exp-1:/tmp# root@Exp-1:/tmp# cat json.txt | python -m json.tool { "menu": { "breakfast": { "Bread Basket": { "desc": "Assortment of fresh baked fruit breads and muffins", "price": 20 }, "English Muffin": { "price": 7.5 }, "Fruit Breads": { "price": 8 } }, "drink": { "Hot Tea": { "price": 5 }, "Juice": { "price": 10, "type": [ "apple", "watermelon", "orange" ] } } } } root@Exp-1:/tmp#
else
の素晴らしい使い方 いくつかのシナリオでは、for ループから抜け出すかどうかを判断し、それに応じて中断状況にのみ対処する必要があります。このとき、フラグ 変数 を使用して、for ループから抜け出すかどうかを識別するのが通常のアプローチです。 以下の例のように、60と80の間に17の倍数があるかどうかを確認します。
flag = False for item in xrange(60, 80): if item % 17 == 0: flag = True break if flag: print "Exists at least one number can be pided by 17"
実際、この時点で else を使用すると、新しい変数を導入せずに同じ効果を達成できます
for item in xrange(60, 80): if item % 17 == 0: flag = True break else: print "exist"
setdefault メソッド
dictionary は Python の非常に強力な組み込みデータ構造ですが、まだ不便ですたとえば、複数のレベルのネストがある場合、通常は次のように記述します
dyna_routes = {} method = 'GET' whole_rule = None # 一些其他的逻辑处理 ... if method in dyna_routes: dyna_routes[method].append(whole_rule) else: dyna_routes[method] = [whole_rule]
実際には、同じ効果を達成できるもっと簡単な記述方法があります
self.dyna_routes.setdefault(method, []).append(whole_rule)
、または collections.defaultdict モジュールを使用することもできます
リーリー以上がPythonプログラミングのJSON形式変換、else文の柔軟な使い方、setdefaultメソッドの詳細解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。