Python 내장 유형 및 일반적인 문제


Python의 내장 데이터 유형은 매우 풍부하며 대략 5가지 범주로 나눌 수 있습니다: 없음, 숫자 유형, 시퀀스 유형, 매핑 유형 및 컬렉션 유형. 아래에서는 이들을 각각 소개하고 향후 참고를 위해 요약해 보겠습니다. 아래 표에는 각 범주의 특정 데이터 유형이 나열되어 있습니다. *참고: 이 기사에서 논의된 내용은 python2를 기반으로 하며 python3은 다소 다를 수 있습니다*.

1.png

1.None

None은 빈 개체인 null 개체를 나타냅니다. 함수가 값을 반환하지 않으면 null 개체가 반환됩니다. None에는 속성이 없으며 부울 표현식에서 False를 나타냅니다.

2. 숫자 유형

부울 유형을 제외한 모든 숫자 유형은 부호가 있습니다. 정수의 표현 범위는 -2147483648에서 2147483647 사이이며 긴 정수는 사용 가능한 메모리 크기에 의해서만 제한되는 모든 길이를 나타낼 수 있습니다.


#整数i = 123i = int(123)#长整数l = 123Ll = long(123)

부동 소수점 숫자는 배정밀도 유형(64비트)으로 C 언어의 double과 동일합니다. 값 범위는 -1.7*10(-308) ~ 1.7*10(308)입니다.

f = 12.3f = float(12.3)

복소수는 한 쌍의 부동 소수점 숫자를 사용하여 표현되고 실수 부분과 허수 부분으로 나누어지며 실수와 imag를 사용하여 액세스되며 허수 부분에는 j 또는 J가 접미사로 붙습니다.

c = 1.0 + 2.3jc = complex(1.0, 2.3)print c.real,c.imag

부울 값에는 각각 정수 1과 0에 매핑되는 True와 False의 두 가지 값만 있습니다.

b = Falseb = bool(True)


2.1. 수치 연산

int, long, float 및 complex에 사용할 수 있는 연산은 덧셈, 뺄셈, 곱셈, 나눗셈, 정수 나눗셈, 지수 및 나머지입니다. 아래에 예가 나와 있습니다.


>>> 1 + 2 # 加法3>>> 1 - 2 # 减法-1>>> 2 * 3 # 乘6>>> 2 / 4 # 整数除0>>> 2 / 4.0 # 浮点除0.5>>> 3 // 2.0 # 整除1.0>>> 2 % 3 # 取余2>>> 3 ** 2 # 幂运算 =3^29

정수에 대해서도 비트 연산을 수행할 수 있습니다. 비트 연산에는 부정(~), 왼쪽 시프트(<<), 오른쪽 시프트(>>), 배타적 OR(^) 등 6가지 종류가 있습니다. , 비트 OR(|), 비트 AND(&)를 누릅니다.

>>> ~1 # 1取反后为-2的补码-2>>> 8 << 1 # 左移16>>> 8 >> 2 # 右移2>>> 1 ^ 3 # 01 和 11 异或得到10,就是22>>> 1 | 3 # 01 和 11 位或得到11,就是33>>> 1 & 3 # 01 和 11 位与得到01,就是11

부울 유형은 부울 표현식을 통해 평가할 수 있습니다. 6가지 부울 비교 연산자가 있습니다: 보다 작음(<), 작거나 같음(<=), 보다 큼(>), 크거나 같음( >=), 같음(==), 같지 않음(!=).

>>> 1 < 2True>>> 1 <= 2True>>> 1 > 2False>>> 1 >= 2False>>> 1 == 2False>>> 1 != 2True

논리 연산은 부울 유형에서도 수행할 수 있습니다. 연산에는 논리 NOT(not), 논리 NOT-OR(or) 및 논리 AND(and)의 세 가지 유형이 있습니다.

>>> not TrueFalse>>> True or FalseTrue>>> True and FalseFalse


2.2. 일반적으로 사용되는 숫자형 함수

abs(): 주어진 객체의 절대값을 반환합니다.


>>> abs(-2)2

divmod(): 나누기와 나머지 연산을 결합하여 몫과 나머지가 포함된 튜플을 반환합니다.

>>> divmod(10, 3)(3, 1)

pow(): 두 개의 매개변수, 전원 작동. 세 개의 매개변수는 지수화 후 나머지를 취합니다.

>>> pow(2, 5),pow(2, 5, 10)(32, 2)

round(): 반올림

>>> round(3.4),round(3.6)(3.0, 4.0)

floor(): 반올림, ceil(): 반올림, sqrt(): 제곱근, 수학 모듈이 필요합니다.

>>> from math import floor,ceil,sqrt>>> floor(3.6),ceil(3.6),sqrt(9)(3.0, 4.0, 3.0)

conjugate(): 복소수를 결합합니다

>>> c = 2 + 3j>>> c.conjugate()(2-3j)


3. 시퀀스 유형

Sequence는 문자열, 목록 및 튜플을 포함하여 음수가 아닌 인덱스가 있는 객체의 순서가 지정된 컬렉션을 나타냅니다. 문자열은 문자의 시퀀스이고, 리스트와 튜플은 임의 객체의 시퀀스입니다. 문자열과 튜플은 변경할 수 없지만 목록은 삽입, 삭제, 교체가 가능합니다. 모든 시퀀스는 반복을 지원합니다.

3.1. 문자열

문자열을 만드는 것은 간단하지만 문자열을 표현하는 방법은 다양합니다.


s = 'string's = "string" # 和上面单引号一样s = '''string''' # 三引号之间的内容都被保留,用于多行输入s = r"string" # 原生字符,关掉字符串中的转义。s = u"string" # unicode字符串

문자열에 대한 방법은 다양하지만 일반적으로 사용되는 방법은 아래 표와 같습니다.

2.png

형식의 예로 {0}은 *args의 첫 번째 값을 나타내고, {name}은 name의 값을 kwargs로 나타냅니다.
>>> "Here is {0},I'm {name}.".format("wuyuans.com", name="wuyuan")"Here is wuyuans.com,I'm wuyuan"


3.2. 목록 및 튜플

목록의 내용은 variable이며, 이는 모든 개체를 포함할 수 있으며 표현됩니다. 대괄호로 .
튜플의 내용은 immutable 이며, 이는 모든 개체를 포함할 수 있으며 괄호로 표시됩니다.


l = [1, 2, 3, '4', '5'] # 列表l = list((1, 2, 3, '4', '5'))t = (1, 2, 3, '4', '5') # 元组t = tuple("1234")

목록 메서드는 주로 목록 내부의 내용을 변경하는 데 사용됩니다. 일반적으로 사용되는 목록 방법은 다음과 같습니다.

3.png

인덱싱을 통해 목록의 요소를 삭제할 수도 있습니다.
>>> l = [1, 2, 3, 4, 5]>>> del l[1]>>> l[1, 3, 4, 5]


3.3. 시퀀스 일반 작업

모든 시퀀스는 인덱스로 액세스할 수 있습니다. 인덱스는 0이고, -1은 마지막 요소입니다. . , -2 마지막에서 두 번째 등입니다.
슬라이싱 작업: 인덱스 범위를 지정하고 해당 하위 시퀀스를 반환합니다.
아래와 같이 일반적으로 사용되는 것들도 있습니다


>>> t = (1, 2, 3, 4, 5)>>> l = [1, 2, 3, 4, 5]>>> t[0]1>>> t[1:4] # 索引1~4(2, 3, 4)>>> t[1:4:2] # 索引1~4,步进为2(2, 4)>>> len(t) # 序列长度5>>> max(t) # 最大值5>>> min(t) # 最小值1>>> sum(t) # 序列求和15


3.4.xrange() 객체 #🎜 🎜#xrange() 객체는 정수 범위를 나타내며 해당 값은 액세스될 때만 계산되므로 xrange 객체에는 슬라이싱 작업을 사용할 수 없습니다. xrange 객체는 xrange([i, ] j [, stride]) 함수에 의해 생성됩니다. 여기서 i는 시작 값이고 stride는 단계 값입니다.


>>> x = xrange(1,10,2)>>> for i in x: print i    13579


4 매핑 유형

Dictionary(dict)는 Python의 유일한 내장 매핑 유형입니다. 문자열, 숫자, 튜플 등과 같은 불변 객체는 사전 키로 사용될 수 있습니다. Dictionary는 중괄호로 표현되며, 키와 값은 콜론으로 구분되며, 각 키 값은 쉼표로 구분됩니다. 지도 객체는 순서가 없습니다.


d = dict((['name', 'wuyuan'], ['age', 23]))d = {'name': 'wuyuan', 'blog': 'wuyuans.com', 'age': 23}d['school'] = 'HDU' # 添加一项

사전의 일반적인 방법 및 작업

사전 순회 방법:
#使用键历遍for i in d:    print i,d[i]#使用键值历遍for k,v in d.items():    print k,v
4.png


#🎜 🎜#5. 컬렉션 유형

컬렉션은 순서가 지정되지 않은 고유 항목 집합입니다. 컬렉션은 인덱싱 또는 슬라이싱 작업을 제공하지 않지만, 내부에 배치되는 내용은 변경할 수 없습니다. 집합에는 변경 가능한 집합(set)과 변경 불가능한 집합(frozenset)의 두 가지 유형이 있습니다.

s = set([1, 2, 3])fs = frozenset([1, 2, 3])

컬렉션 일반 방법 및 작업

변수 컬렉션 집합 방법 및 작업5.png #🎜 🎜#

6.png

python 내장 유형 FAQ

기본 내장 데이터 유형은 무엇인가요? 파이썬?

정수(숫자), 문자열, 튜플, 목록, 사전 및 부울 유형과 같은 일부 기본 데이터 유형. 학습이 심화됨에 따라 모든 사람은 점점 더 흥미로운 데이터 유형을 접하게 될 것입니다. Python 초보자는 시작할 때 이러한 유형을 먼저 이해할 수 있습니다.

기본 내장 데이터 유형에 해당하는 기호가 있습니까?

1) 정수 유형 - 정수 - 숫자

Python에는 5가지 숫자 유형이 있으며, 가장 일반적인 유형은 정수 유형입니다. 예: 1234, -1234

2) 부울 유형 - bool - ==

기호로 표시되는 부울 유형은 True 및 False 두 가지 값만 갖습니다. 비교하고 판단한 결과를 부울 값이라고 합니다. 예: 3==3은 True, 3==5는 False

3) 문자열 - str - ' ' 또는 "

로 표시됨 예: 'www.phpcnpython.com' 또는 " hello"

4) 리스트 - 리스트 - [ ] 기호로 표시

예: [1,2,3,4]

5) 튜플 - 튜플 - ( ) 기호로 표시

예: (' d',300)

6) 사전 - dict - { } 기호로 표시

예: {'name':'coco','country':'china'}


Python의 기본 데이터 유형은 변경 가능하고 어떤 것이 변경 불가능합니까?

python 변수 데이터 유형: list[], Dictionary dict{}

python 불변 데이터 유형: int, string str' ', tuple tuple()