[python] underscore(_) in Python
출처: https://hackernoon.com/understanding-the-underscore-of-python-309d1a029edc
- Python에서 Underscore(
_
)는 특별한 문자이다.
- 인터프리터에서 마지막 표현 값을 저장하고 있다.
- 특정 문자 무시
1. 인터프리터에서 마지막 값
>>> 10
10
>>> _
10
>>> _ * 3
30
>>> _ * 20
600
2. 값 무시
Unpacking
시, 값을 무시
x, _, y = (1, 2, 3) # x=1, y=3
# Ignore the multiple values. It is called "Extended Unpacking" which is available in only Python 3.x
x, *_, y = (1, 2, 3, 4, 5) # x = 1, y = 5
# Ignore the index
for _ in range(10):
do_something()
# Ignore a value of specific location
for _, val in list_of_tuple:
do_something()
_
single leading underscore
_
single leading underscore는 모듈에서 private 변수, 함수, 메서드, 클래스로 사용할 수 있게한다.
private variable
_internal_name = 'hello world!' # private variable
_internal_version = '1.0' # private variable
priavate class, method
class _Student: # private Class
_hidden_factor = 2 # private Variable
class _Student:
def __init__(self, price):
self._price = price
def _double_price(self): # private method
return self._price
_
single trailing underscore
- Python keyword, Python built-in 와 충돌을 피하기위해 사용된다.
Tkinter.Toplevel(master, class_='ClassName') # 'class' 키워드와 충돌을 피해기 위해 사용
list_=List.objects.get(1) # list built-in method와 충돌을 피하기 위해 사용
__
double leading underscore
__
더블 리딩 언더스코어는 규약이기 보다는 syntax
이다.
- 클래스 사이의
name attribute
의 충돌을 피하기 위한 클래스의 attribute names
를 mangle한다.
__
double trailing underscore
__
NAME __
는 magic mothod에서 사용된다.
0b_1111_1111
: digit separate
dec_base = 1_000_000
bin_base = 0b_1111_0000
hex_base = 0x_1234_abcd
Author And Source
이 문제에 관하여([python] underscore(_) in Python), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@markyang92/python-underscore-in-Python
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
>>> 10
10
>>> _
10
>>> _ * 3
30
>>> _ * 20
600
Unpacking
시, 값을 무시
x, _, y = (1, 2, 3) # x=1, y=3
# Ignore the multiple values. It is called "Extended Unpacking" which is available in only Python 3.x
x, *_, y = (1, 2, 3, 4, 5) # x = 1, y = 5
# Ignore the index
for _ in range(10):
do_something()
# Ignore a value of specific location
for _, val in list_of_tuple:
do_something()
_
single leading underscore
_
single leading underscore는 모듈에서 private 변수, 함수, 메서드, 클래스로 사용할 수 있게한다.
private variable
_internal_name = 'hello world!' # private variable
_internal_version = '1.0' # private variable
priavate class, method
class _Student: # private Class
_hidden_factor = 2 # private Variable
class _Student:
def __init__(self, price):
self._price = price
def _double_price(self): # private method
return self._price
_
single trailing underscore
- Python keyword, Python built-in 와 충돌을 피하기위해 사용된다.
Tkinter.Toplevel(master, class_='ClassName') # 'class' 키워드와 충돌을 피해기 위해 사용
list_=List.objects.get(1) # list built-in method와 충돌을 피하기 위해 사용
__
double leading underscore
__
더블 리딩 언더스코어는 규약이기 보다는 syntax
이다.
- 클래스 사이의
name attribute
의 충돌을 피하기 위한 클래스의 attribute names
를 mangle한다.
__
double trailing underscore
__
NAME __
는 magic mothod에서 사용된다.
0b_1111_1111
: digit separate
dec_base = 1_000_000
bin_base = 0b_1111_0000
hex_base = 0x_1234_abcd
Author And Source
이 문제에 관하여([python] underscore(_) in Python), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@markyang92/python-underscore-in-Python
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
_
single leading underscore는 모듈에서 private 변수, 함수, 메서드, 클래스로 사용할 수 있게한다._internal_name = 'hello world!' # private variable
_internal_version = '1.0' # private variable
class _Student: # private Class
_hidden_factor = 2 # private Variable
class _Student:
def __init__(self, price):
self._price = price
def _double_price(self): # private method
return self._price
_
single trailing underscore
- Python keyword, Python built-in 와 충돌을 피하기위해 사용된다.
Tkinter.Toplevel(master, class_='ClassName') # 'class' 키워드와 충돌을 피해기 위해 사용
list_=List.objects.get(1) # list built-in method와 충돌을 피하기 위해 사용
__
double leading underscore
__
더블 리딩 언더스코어는 규약이기 보다는 syntax
이다.
- 클래스 사이의
name attribute
의 충돌을 피하기 위한 클래스의 attribute names
를 mangle한다.
__
double trailing underscore
__
NAME __
는 magic mothod에서 사용된다.
0b_1111_1111
: digit separate
dec_base = 1_000_000
bin_base = 0b_1111_0000
hex_base = 0x_1234_abcd
Author And Source
이 문제에 관하여([python] underscore(_) in Python), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@markyang92/python-underscore-in-Python
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
__
더블 리딩 언더스코어는 규약이기 보다는 syntax
이다.- 클래스 사이의
name attribute
의 충돌을 피하기 위한 클래스의attribute names
를 mangle한다.
__
double trailing underscore
__
NAME__
는 magic mothod에서 사용된다.
0b_1111_1111
: digit separate
dec_base = 1_000_000
bin_base = 0b_1111_0000
hex_base = 0x_1234_abcd
Author And Source
이 문제에 관하여([python] underscore(_) in Python), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@markyang92/python-underscore-in-Python
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
dec_base = 1_000_000
bin_base = 0b_1111_0000
hex_base = 0x_1234_abcd
Author And Source
이 문제에 관하여([python] underscore(_) in Python), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@markyang92/python-underscore-in-Python저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)