Python-변수 유형
변수는 값을 저장하기 위해 예약 된 메모리 위치 일뿐입니다. 이것은 변수를 만들 때 메모리에 약간의 공간을 예약한다는 것을 의미합니다.
변수의 데이터 유형에 따라 인터프리터는 메모리를 할당하고 예약 된 메모리에 저장할 수있는 항목을 결정합니다. 따라서 변수에 다른 데이터 유형을 할당하여 이러한 변수에 정수, 소수 또는 문자를 저장할 수 있습니다.
변수에 값 할당
파이썬 변수는 메모리 공간을 예약하기 위해 명시적인 선언이 필요하지 않습니다. 변수에 값을 할당하면 선언이 자동으로 발생합니다. 등호 (=)는 변수에 값을 할당하는 데 사용됩니다.
= 연산자의 왼쪽에있는 피연산자는 변수의 이름이고 = 연산자의 오른쪽에있는 피연산자는 변수에 저장된 값입니다. 예를 들면-
#!/usr/bin/python
counter = 100 # An integer assignment
miles = 1000.0 # A floating point
name = "John" # A string
print counter
print miles
print name
여기서 100, 1000.0 및 "John"은 각각 counter , miles 및 name 변수에 할당 된 값 입니다. 이것은 다음 결과를 생성합니다-
100
1000.0
John
다중 할당
Python을 사용하면 단일 값을 여러 변수에 동시에 할당 할 수 있습니다. 예를 들면-
a = b = c = 1
여기서는 값이 1 인 정수 객체가 생성되고 세 변수가 모두 동일한 메모리 위치에 할당됩니다. 여러 변수에 여러 개체를 할당 할 수도 있습니다. 예를 들면-
a,b,c = 1,2,"john"
여기서 값이 1과 2 인 정수 개체 두 개가 각각 변수 a와 b에 할당되고 값이 "john"인 문자열 개체 하나가 변수 c에 할당됩니다.
표준 데이터 유형
메모리에 저장된 데이터는 여러 유형이 될 수 있습니다. 예를 들어, 개인의 나이는 숫자 값으로 저장되고 주소는 영숫자로 저장됩니다. 파이썬에는 가능한 작업과 각각에 대한 저장 방법을 정의하는 데 사용되는 다양한 표준 데이터 유형이 있습니다.
파이썬에는 5 가지 표준 데이터 유형이 있습니다.
- Numbers
- String
- List
- Tuple
- Dictionary
파이썬 숫자
숫자 데이터 유형은 숫자 값을 저장합니다. 숫자 개체는 값을 할당 할 때 만들어집니다. 예를 들면-
var1 = 1
var2 = 10
del 문을 사용하여 숫자 개체에 대한 참조를 삭제할 수도 있습니다. del 문의 구문은 다음과 같습니다.
del var1[,var2[,var3[....,varN]]]]
del 문을 사용하여 단일 개체 또는 여러 개체를 삭제할 수 있습니다. 예를 들면-
del var
del var_a, var_b
파이썬은 네 가지 다른 숫자 유형을 지원합니다-
- int (부호있는 정수)
- long (long 정수, 8 진수 및 16 진수로도 표현 가능)
- float (부동 소수점 실제 값)
- 복소수 (복소수)
예
다음은 숫자의 몇 가지 예입니다.
int | 긴 | 흙손 | 복잡한 |
---|---|---|---|
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32.3 + e18 | .876j |
-0490 | 535633629843L | -90. | -.6545 + 0J |
-0x260 | -052318172735L | -32.54e100 | 3e + 26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
파이썬에서는 long과 함께 소문자 l을 사용할 수 있지만 숫자 1과의 혼동을 피하기 위해 대문자 L 만 사용하는 것이 좋습니다. 파이썬은 대문자 L로 long 정수를 표시합니다.
복소수는 x + yj로 표시되는 순서가 지정된 실수 부동 소수점 숫자 쌍으로 구성됩니다. 여기서 x와 y는 실수이고 j는 허수 단위입니다.
파이썬 문자열
Python의 문자열은 따옴표로 표시된 연속적인 문자 집합으로 식별됩니다. Python은 작은 따옴표 또는 큰 따옴표 쌍을 허용합니다. 문자열의 일부는 슬라이스 연산자 ([] 및 [:])를 사용하여 가져올 수 있습니다. 인덱스는 문자열 시작 부분에서 0으로 시작하고 끝 부분에서 -1부터 작동합니다.
더하기 (+) 기호는 문자열 연결 연산자이고 별표 (*)는 반복 연산자입니다. 예를 들면-
#!/usr/bin/python
str = 'Hello World!'
print str # Prints complete string
print str[0] # Prints first character of the string
print str[2:5] # Prints characters starting from 3rd to 5th
print str[2:] # Prints string starting from 3rd character
print str * 2 # Prints string two times
print str + "TEST" # Prints concatenated string
이것은 다음 결과를 생성합니다-
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST
파이썬 목록
목록은 Python의 복합 데이터 유형 중 가장 다재다능합니다. 목록에는 쉼표로 구분되고 대괄호 ([])로 묶인 항목이 포함됩니다. 목록은 C의 배열과 어느 정도 유사합니다. 목록의 한 가지 차이점은 목록에 속한 모든 항목이 다른 데이터 유형일 수 있다는 것입니다.
목록에 저장된 값은 목록의 시작 부분에서 0부터 시작하고 끝 -1까지 작동하는 인덱스와 함께 슬라이스 연산자 ([] 및 [:])를 사용하여 액세스 할 수 있습니다. 더하기 (+) 기호는 목록 연결 연산자이고 별표 (*)는 반복 연산자입니다. 예를 들면-
#!/usr/bin/python
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print list # Prints complete list
print list[0] # Prints first element of the list
print list[1:3] # Prints elements starting from 2nd till 3rd
print list[2:] # Prints elements starting from 3rd element
print tinylist * 2 # Prints list two times
print list + tinylist # Prints concatenated lists
이것은 다음 결과를 생성합니다-
['abcd', 786, 2.23, 'john', 70.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.2, 123, 'john']
Python 튜플
튜플은 목록과 유사한 또 다른 시퀀스 데이터 유형입니다. 튜플은 쉼표로 구분 된 여러 값으로 구성됩니다. 그러나 목록과 달리 튜플은 괄호로 묶여 있습니다.
목록과 튜플의 주요 차이점은 다음과 같습니다. 목록은 대괄호 ([])로 묶여 있고 요소와 크기를 변경할 수 있지만 튜플은 괄호 (())로 묶어서 업데이트 할 수 없습니다. 튜플은 다음과 같이 생각할 수 있습니다.read-only기울기. 예를 들면-
#!/usr/bin/python
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
print tuple # Prints the complete tuple
print tuple[0] # Prints first element of the tuple
print tuple[1:3] # Prints elements of the tuple starting from 2nd till 3rd
print tuple[2:] # Prints elements of the tuple starting from 3rd element
print tinytuple * 2 # Prints the contents of the tuple twice
print tuple + tinytuple # Prints concatenated tuples
이것은 다음 결과를 생성합니다-
('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')
다음 코드는 허용되지 않는 튜플을 업데이트하려고했기 때문에 튜플에 유효하지 않습니다. 목록에서도 비슷한 경우가 가능합니다-
#!/usr/bin/python
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tuple[2] = 1000 # Invalid syntax with tuple
list[2] = 1000 # Valid syntax with list
파이썬 사전
파이썬의 사전은 일종의 해시 테이블 유형입니다. Perl에서 발견되는 연관 배열 또는 해시처럼 작동하며 키-값 쌍으로 구성됩니다. 사전 키는 거의 모든 Python 유형이 될 수 있지만 일반적으로 숫자 또는 문자열입니다. 반면에 값은 임의의 Python 객체가 될 수 있습니다.
사전은 중괄호 ({})로 묶여 있으며 값은 대괄호 ([])를 사용하여 할당 및 액세스 할 수 있습니다. 예를 들면-
#!/usr/bin/python
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # Prints value for 'one' key
print dict[2] # Prints value for 2 key
print tinydict # Prints complete dictionary
print tinydict.keys() # Prints all the keys
print tinydict.values() # Prints all the values
이것은 다음 결과를 생성합니다-
This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']
사전에는 요소 간의 순서 개념이 없습니다. 요소가 "불 순서"라고 말하는 것은 올바르지 않습니다. 그들은 단순히 순서가 없습니다.
데이터 유형 변환
경우에 따라 내장 유형간에 변환을 수행해야 할 수도 있습니다. 유형간에 변환하려면 유형 이름을 함수로 사용하면됩니다.
한 데이터 유형에서 다른 데이터 유형으로 변환을 수행하는 몇 가지 내장 함수가 있습니다. 이러한 함수는 변환 된 값을 나타내는 새 개체를 반환합니다.
Sr. 아니. | 기능 및 설명 |
---|---|
1 | int(x [,base]) x를 정수로 변환합니다. base는 x가 문자열 인 경우 기본을 지정합니다. |
2 | long(x [,base] ) x를 긴 정수로 변환합니다. base는 x가 문자열 인 경우 기본을 지정합니다. |
삼 | float(x) x를 부동 소수점 숫자로 변환합니다. |
4 | complex(real [,imag]) 복소수를 만듭니다. |
5 | str(x) 객체 x를 문자열 표현으로 변환합니다. |
6 | repr(x) 개체 x를 식 문자열로 변환합니다. |
7 | eval(str) 문자열을 평가하고 객체를 반환합니다. |
8 | tuple(s) s를 튜플로 변환합니다. |
9 | list(s) s를 목록으로 변환합니다. |
10 | set(s) s를 집합으로 변환합니다. |
11 | dict(d) 사전을 만듭니다. d는 (키, 값) 튜플의 시퀀스 여야합니다. |
12 | frozenset(s) s를 고정 된 집합으로 변환합니다. |
13 | chr(x) 정수를 문자로 변환합니다. |
14 | unichr(x) 정수를 유니 코드 문자로 변환합니다. |
15 | ord(x) 단일 문자를 정수 값으로 변환합니다. |
16 | hex(x) 정수를 16 진 문자열로 변환합니다. |
17 | oct(x) 정수를 8 진수 문자열로 변환합니다. |