Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Dấu gạch dưới (_) trong Python: ý nghĩa và sử dụng

Dấu gạch dưới _ có nhiều ý nghĩa đặc biệt trong Python tùy ngữ cảnh.

1. Lưu giá trị biểu thức cuối trong REPL

>> 20
20
>>> _
20
>>> _ + 3
23

2. Bỏ qua giá trị (unpacking)

x, _, y = (1, 2, 3)
# x=1, y=3, giá trị 2 bị bỏ qua

for _ in range(5):
    print("Hello")  # biến lặp không dùng

3. Quy ước đặt tên biến/hàm

4. Tách chữ số số lớn (Python 3.6+)

dec_base = 1_000_000
print(dec_base)  # 1000000
hex_val = 0xFF_FF_FF
bin_val = 0b1010_0011

5. Internationalization (i18n/l10n)

import gettext
_ = gettext.gettext
print(_("Hello"))  # Dịch theo locale

Tóm tắt

  • _ trong REPL = kết quả trước.
  • _ trong code = biến "throwaway" (bỏ qua).
  • _name = internal/private.
  • __name = name mangling (tránh xung đột subclass).
  • __name__ = magic method.
  • 1_000_000 = readable numeric literal.
KiểuVí dụÝ nghĩa
single_trailing_class_Tránh trùng từ khóa (class, def...)
_single_leading_private_varQuy ước: private (internal use)
__double_leading__methodName mangling: _ClassName__method
__double_leading_trailing____init__Magic/dunder methods (built-in protocol)