Python의 기본 데이터 ...LOGIN

Python의 기본 데이터 유형

1. 정수

Python은 물론 음의 정수를 포함하여 모든 크기의 정수를 처리할 수 있습니다. Python 프로그램에서 정수는 수학에서와 정확히 동일하게 표현됩니다(예: 1, 100, -8080, 0 등). .

컴퓨터는 2진수를 사용하기 때문에 때로는 16진수를 사용하여 정수를 나타내는 것이 더 편리합니다. 16진수는 0x 접두어와 0-9, a-f로 표시됩니다(예: 0xff00, 0xa5b4c3d2 등).

2. 부동 소수점 숫자

부동 소수점 숫자는 소수점 숫자라고도 합니다. 왜냐하면 과학적 표기법으로 표현하면 부동 소수점 숫자의 소수점 위치가 가변적이기 때문입니다. 정수와 부동 소수점 숫자가 컴퓨터 내부에 저장되는 방식은 다릅니다. 정수 연산은 항상 정확하지만(나눗셈도 정확함) 부동 소수점 연산은 반올림 오류가 있을 수 있습니다.

3. 문자열

문자열은 'abc', '123' 등과 같이 '' 또는 ''로 묶인 텍스트입니다. '' 또는 "" 자체는 문자열의 일부가 아니라 단지 표현일 뿐이라는 점에 유의하세요. 따라서 문자열 'abc'에는 a, b, c의 3개 문자만 있습니다. 이는 다른 프로그래밍 언어에서도 비슷합니다.

(1) Python의 문자열 및 문자열 이스케이프

위에서 언급한 것처럼 문자열은 '' 또는 "" 대괄호로 표시할 수 있습니다. 하지만 때때로 문자열 자체에 '' 또는 "" 가 포함되어 있는 경우 어떻게 해야 합니까?

이때 문자열의 일부 특수 문자를 "이스케이프"해야 합니다. Python 문자열은 . JAVA도 마찬가지다.

일반적으로 사용되는 이스케이프 문자는 다음과 같습니다.

\n 表示换行
\t 表示一个制表符
\ 表示 \ 字符本身

구체적인 예:

354b77388d85a11d9ed6755399700f6.png위에 문제가 있습니다. 문자열에 이스케이프해야 할 문자가 많이 포함되어 있으면 각 문자를 이스케이프하는 것이 매우 번거롭습니다. 이러한 상황에 대처하기 위해 문자열 앞에 접두사 r을 추가하면 이것이 원시 문자열이고 내부 문자를 이스케이프할 필요가 없음을 나타냅니다.

a03e52b4b16cce036b9b903b405f83d.png단, 한 가지 주의할 점은 r'...' 표기법은 여러 줄의 문자열을 나타낼 수 없고, '와 "가 포함된 문자열도 나타낼 수 없다는 것입니다.

여러 줄의 문자열을 표현하고 싶다면 다음과 같이 하세요. '''...'''를 사용하면 여러 줄 문자열 앞에 r을 추가하여 이 여러 줄 문자열을 원시 문자열로 바꿀 수도 있습니다

634ef4d2306ff34addfca848aedc7cd.png (2) 문자열 인코딩 문제

우리 모두는 컴퓨터가 숫자만 처리할 수 있다는 것을 알고 있습니다. 텍스트를 처리하려면 먼저 텍스트를 숫자로 변환한 후 처리해야 합니다. 최초의 컴퓨터는 8비트를 바이트로 사용하여 설계되었습니다. 따라서 바이트로 표현할 수 있는 가장 큰 정수는 255(이진수 11111111 = 십진수 255)이며, 영문자를 표기하려면 0~255를 사용합니다. 숫자와 일부 기호의 경우 이 인코딩 테이블을 ASCII 인코딩이라고 합니다. 예를 들어 대문자 A의 인코딩은 65이고 소문자 z의 인코딩은 122입니다.

중국어를 표현하려면 당연히 1바이트로는 충분하지 않으며 최소한 2바이트가 필요하며 ASCII 인코딩과 충돌할 수 없습니다. 따라서 중국에서는 중국어를 인코딩하기 위해 GB2312 인코딩을 공식화했습니다.

마찬가지로 일본어, 한국어 등 다른 언어에도 이런 문제가 있습니다. 모든 텍스트의 인코딩을 통일하기 위해 유니코드가 탄생했습니다. 유니코드는 모든 언어를 일련의 인코딩으로 통합하므로 더 이상 잘못된 문자가 발생하지 않습니다.

유니코드는 일반적으로 문자를 표현하기 위해 2바이트를 사용합니다. 원래 영어 인코딩은 1바이트에서 2바이트로 변경되었습니다. 상위 바이트만 모두 0으로 채우면 됩니다.

Python은 유니코드 표준이 출시되기 전에 탄생했기 때문에 초기 Python은 ASCII 인코딩만 지원합니다. 일반 문자열 'ABC'는 Python 내부적으로 ASCII로 인코딩됩니다.

Python은 나중에 유니코드에 대한 지원을 추가했으며 유니코드로 표현된 문자열은 u'...'로 표현됩니다.

그러나 최신 Python 3 버전에서는 문자열이 유니코드로 인코딩됩니다. 이는 Python의 문자열이 여러 언어를 지원한다는 의미입니다. 위의 예시와 마찬가지로 코드에 u'...'를 추가하지 않아 정상적으로 표시될 수 있습니다.

단, Python 소스 코드도 텍스트 파일이므로 소스 코드에 중국어가 포함되어 있는 경우 소스 코드 저장 시 UTF-8 인코딩을 지정해야 합니다. Python 인터프리터가 소스 코드를 읽을 때 UTF-8 인코딩으로 읽을 수 있도록 일반적으로 파일 시작 부분에 다음 두 줄을 작성합니다:

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

첫 번째 주석 줄은 Linux/OS X에 알리는 것입니다. Python 실행 프로그램의 경우 Windows 시스템은 이 주석을 무시합니다.

주석의 두 번째 줄은 Python 인터프리터에게 UTF-8 인코딩에 따라 소스 코드를 읽도록 지시하는 것입니다. 소스 코드에 잘못된 문자가 있을 수 있습니다.

UTF-8 인코딩이 .py 파일이 UTF-8로 인코딩되었음을 의미하지 않는다고 명시했습니다. 텍스트 편집기가 BOM 인코딩 없이 UTF-8을 사용하고 있는지 확인해야 합니다.

4. 부울 값 값의 표현은 부울 대수와 완전히 동일합니다. 부울 값에는 True 또는 False의 두 가지 값만 있습니다. Python에서는 부울 값을 나타내기 위해 True 또는 False를 직접 사용할 수 있습니다. 대소문자에 주의) 또는 부울 연산을 사용하여 계산할 수 있습니다.

부울 값은 and, or, not로 연산할 수 있습니다.

and

연산은 AND 연산입니다. 모든 것이 True인 경우에만 AND 연산의 결과가 True가 됩니다.

or

연산은 OR 연산입니다. 둘 중 하나라도 True이면 OR 연산의 결과는 True입니다.

not 이 연산은 True를 False로, False를 True로 바꾸는 단항 연산자입니다.

5. Null 값

기본적으로 모든 프로그래밍 언어에는 고유한 특수 값이 있습니다. Python에서는 null 값을 None으로 표시합니다

다음 섹션
코스웨어