programing

데이터베이스 행 태플의 정수에 'L' 접미사가 붙는 이유는 무엇입니까?

itsource 2022. 10. 4. 22:19
반응형

데이터베이스 행 태플의 정수에 'L' 접미사가 붙는 이유는 무엇입니까?

MySQL 행의 정수 값에 'L' 접미사가 붙는 이유는 무엇입니까?자세한 내용은 다음과 같습니다.

다음 사전은 표시하기 쉽도록 여기에 인위적으로 포맷되어 있습니다.

{'estimated': '', 
 'suffix': '', 
 'typeofread': 'g', 
  'acct_no': 901001000L, 
  'counter': 0, 
  'time_billed': datetime.datetime(2012, 5, 1, 9, 5, 33), 
  'date_read': datetime.datetime(2012, 3, 13, 23, 19, 45), 
  'reading': 3018L, 
  'meter_num': '26174200'}

는 MySQL 데이터베이스 테이블의 컬럼으로 구성되어 있으며 테이블에서 한 번 읽으면 압축됩니다.

이러한 값을 int()에 전달하여 'L'을 삭제할 수 있습니다.따라서 사전이 snapt_read라는 변수에 있는 경우 다음과 같이 할 수 있습니다.

int(snapped_read['reading'])그리고.3018L로 바뀔 것이다.3018.

왜 정수가 이런 식으로 나오는지 궁금할 뿐이야

Python 3 이전 버전의 Python에서는 긴 정수 리터럴이 다음과 같이 표시되었습니다.l또는L서픽스Python 3에서는intlong가 통합되어 있는 것은int이 기능은 다음과 거의 비슷합니다.long하곤 했다.

기술적으로는 Python(2)의intC와 동등했다.long반면 Python은long더 가까웠다.BigNumber-무제한정확한입력(현재 Python 3의 경우)int를 입력합니다).

http://docs.python.org/library/stdtypes.html#numeric-types-int-float-long-complex

L를 위한longdata type 입니다.

예를들면,

age = 24 # int
bankBalance = 20000005L # long

정수가 아니기 때문에 길이가 됩니다.

http://docs.python.org/library/stdtypes.html#typesnumeric

하지만 보통 그들은 큰 문제를 일으키지 않는다.

>>> a=1
>>> b=long(1)
>>> a
1
>>> b
1L
>>> a==b
True

이에 관한 기타 stackoverflow 질문:여기서

언급URL : https://stackoverflow.com/questions/11764713/why-do-integers-in-database-row-tuple-have-an-l-suffix

반응형