Python 30のヒント、ヒント(3)

21.インタラクティブシェルで_(アンダースコア演算子)を使用する

前の式の結果は、アンダースコア演算子を使用して取得できます。たとえば、IPythonでは、次のように実行できます。

In [1]: 3 * 3
Out[1]: 9In [2]: _ + 3
Out[2]: 12

これはPythonシェルでも使用できます。さらに、IPythonシェルでは、式In [n]からOut [n]の値を取得することもできます。たとえば、上記の例では、Out [1]は数値9を返します。

22.Webサーバーをすばやく作成する

Webサービスをすばやく開始して、現在のディレクトリの内容を提供できます。

python3 -m http.server

同僚とファイルを共有したり、単純なHTML Webサイトをテストしたりする場合は、この方法を検討できます。

23.複数行の文字列

三重引用符を使用してコード内の複数行の文字列を囲むことはできますが、このアプローチは理想的ではありません。以下に示すように、三重引用符の間に配置されたものはすべて、コードの形式を含めて文字列になります。

複数行の文字列を連結できるだけでなく、コードをクリーンに保つことができる別の方法が好きです。唯一の欠点は、改行文字を明示的に指定する必要があることです。

s1 = """Multi line strings can be put
        between triple quotes. It's not ideal
        when formatting your code though"""

print (s1)
# Multi line strings can be put
#         between triple quotes. It's not ideal
#         when formatting your code though

s2 = ("You can also concatenate multiple\n" +
        "strings this way, but you'll have to\n"
        "explicitly put in the newlines")

print(s2)
# You can also concatenate multiple
# strings this way, but you'll have to
# explicitly put in the newlines
24.条件付き割り当ての三項演算子

このメソッドは、コードの可読性を確保しながら、コードをより簡潔にすることができます。

[on_true] if [expression] else [on_false]
示例如下:

x = "Success!" if (y == 2) else "Failed!"
25.要素の出現をカウントします

コレクションライブラリのCounterを使用して、リスト内のすべての一意の要素の出現回数を取得できます。Counterは辞書を返します。

from collections import Counter

mylist = [1, 1, 2, 3, 4, 5, 5, 5, 6, 6]
c = Counter(mylist)
print(c)
# Counter({1: 2, 2: 1, 3: 1, 4: 1, 5: 3, 6: 2})

# And it works on strings too:
print(Counter("aaaaabbbbbccccc"))
# Counter({'a': 5, 'b': 5, 'c': 5})
26.比較演算子へのリンク

Pythonで複数の比較演算子をリンクして、より読みやすく簡潔なコードを作成できます。

x = 10

# Instead of:
if x > 5 and x < 15:
    print("Yes")
# yes

# You can also write:
if 5 < x < 15:
    print("Yes")
# Yes
27.色を追加する

ここに画像の説明を挿入

Coloramaを介して端末の表示色を設定できます。

from colorama import Fore, Back, Style

print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.DIM + 'and in dim text')
print(Style.RESET_ALL)
print('back to normal now')
28.日付処理

標準の日付モジュールの補足として、python-dateutilモジュールは非常に強力な拡張機能を提供します。次のコマンドでインストールできます。

pip3 install python-dateutil 

このライブラリを使用して、多くの魔法の操作を実行できます。ここに例を示します。ログファイル内の日付のファジー分析:

from dateutil.parser import parse

logline = 'INFO 2020-01-01T00:00:01 Happy new year, human.'
timestamp = parse(log_line, fuzzy=True)
print(timestamp)
# 2020-01-01 00:00:01

覚えておく必要があるのは、通常のPythonの日付と時刻の関数では解決できない問題が発生した場合、python-dateutilを検討することです。

29.整数除算

Python 2では、オペランドの1つが浮動小数点数でない限り、除算演算子(/)はデフォルトで整数除算になります。したがって、次のように書くことができます。

# Python 2
5 / 2 = 2
5 / 2.0 = 2.5
在 Python 3 中,除法运算符(/)默认为浮点除法,而整数除法的运算符为 //。因此,你需要这么写:

Python 3
5 / 2 = 2.5
5 // 2 = 2

この変更の背後にある動機については、PEP-0238(https://www.python.org/dev/peps/pep-0238/)を参照してください。

30.chardetによって設定された文字を検出します

chardetモジュールを使用して、ファイルの文字セットを検出できます。このモジュールは、大量のランダムテキストを分析するときに非常に役立ちます。インストール方法は次のとおりです。

pip install chardet

インストールが完了したら、次のようにコマンドラインツールchardetectを使用できます。

chardetect somefile.txt
somefile.txt: ascii with confidence 1.0

おすすめ

転載: blog.csdn.net/weixin_42464956/article/details/107533454