Pythonの職人:デジタル技術の使用や研究ノートの文字列

#Python職人:デジタルと文字列のトリックの研究ノートの使用
#https://github.com/piglei/one-python-craftsman/blob/master/zh_CN/3-tips-on-numbers-and-strings.md

 

:使用は、型列挙型は、コードを改善列挙しました

次のコードは避けてください
DEF (TRIP)mark_trip_as_featured:
     "" " 推奨セクションに旅を追加する
     " "" 
    IF trip.source == 11 
        do_some_thing(トリップ)
    elifの trip.source == 12 
        do_some_other_thing(トリップ)
    ... ...
    リターン


以下のコード支持者
から列挙型のインポートIntEnumを

クラスTripSource(IntEnum):
    FROM_WEBSITE = 11 
    FROM_IOS_CLIENT = 12


デフmark_trip_as_featured(旅):
     もし trip.source == TripSource.FROM_WEBSITE:
        do_some_thing(トリップ)
    elifの trip.source == TripSource.FROM_IOS_CLIENT:
        do_some_other_thing(トリップ)
    ... ...
    リターン

 

:しないでください事前に計算リテラル式

 

次のコードは避け
DEFのF1(delta_secondsを):
    時間が11日以上経過した場合、何もしない
    IF delta_seconds> 950 400 リターン 
    ...
コード次促進
DEF F1(delta_seconds):
     IF delta_seconds> * 3600 11 * 24 リターン

 

実用的なヒント

 

1 。ブール値は、実際には「デジタル」であります" パイソン"" ジャバスクリプト" ] [2> 1 ]
 ' のJavascript '


[ 2]> [1 ]すなわち真、真である1
[ " パイソン"" Javascriptの" ] [1]

 

長い文字列の読みやすさを改善するために2

使用して、長い文字列をラップするために括弧して、自由にラインを折ることができます。

デフメイン():
    logger.info((非常に悪いプロセスの間に起こった何かがあります。
                 管理者に連絡してください。))

 


全体のコードをインデントあなたは視覚効果を解決するために、標準ライブラリtextwrapを使用することができます

 

 

textwrap インポートDEDENT

DEF ()メイン:
     IF user.is_active:
        全体のテキストが左端の空の文字列をインデントしますからDEDENT 
        メッセージ= DEDENT(「」 " \
            ようこそ、今日の映画のリスト:
            - ジョー(1975)
            - シャイニング(1980)
            -ソウ(2004)""」

 

3.float(「INF」)とフロート(「 - INF」)、正と負の無限大の数学の世界に対応し、それらの両方。これらを比較すると、このルールを満たす任意の数:フロート(「 - INF」)<任意の値<フロート(「INF」)。

彼らはこのような特性を持っているので、我々は特定のシナリオでそれらを過ごすことができます。

年齢に応じて、年齢が最後端に設けられていないA.昇順 
>>>ユーザー= { トム:19、ジェニー:13であり、ジャック:なし、アンドリュー:43ではない}
(ソート>>> users.keys()、キー= ラムダ users.get(ユーザー):ユーザーまたはフロート(' INFを' ))ジェニートムアンドリュージャック]

B.サイクルを初期値、第1判定論理簡略として 
>>> = MAX_NUMフロート(-INFが >>> 最大数のリストを見つける 
>>> ための I における [23 71 ,. 3、21であり、あります8 ]:
...:     もし私> MAX_NUM:
...:MAX_NUM = I
...:
>>> MAX_NUM
 71

 

おすすめ

転載: www.cnblogs.com/botoo/p/12048709.html