ė ė²ģ§ø ķģ“ģ¬ ģź°ģ
ėė¤.
ģ“ģ ģź°(šPYTHON3_#01 : ģ°ģ°ģ)ģė ė¤ģķ ģ°ģ°ģė¤ź³¼ ģ¬ģ©, ź·ø ģ°ģ ģģģ ėķ“ ģģ볓ģģµėė¤. ģė ė“ģ©ģ ģ½ģ“ė³“ź³ , ģ źø°ģµģ“ ėģ§ ģėė¤ė©“ ė³µģµķģźøø ė°ėėė¤.
ā¼ ģ°ģ ģ°ģ°ģ(matematical operator)ģ ģ¢
ė„
ā¼ ė¹źµ ģ°ģ°ģ(comparison operator)ģ ģ¢
ė„
ā¼ ė
¼ė¦¬ ģ°ģ°ģ(logical operator)ģ ģ¢
ė„
ā¼ ė³µķ© ėģ
ģ°ģ°ģ(in-place operator)ģ ģ¢
ė„
ā¼ ź° ģ°ģ°ģė¤ģ validķ ģ¬ģ©ė² ė° ģ£¼ģģ¬ķ
ā¼ ģ°ģ°ģė¤ģ ģ°ģ ģģ
ģ“ė² ģź°ģ ģė£ķ(data type)ź³¼ ģė£źµ¬ģ”°(data structure)ģ ėķ“ ź°ėØķ ģģė³“ź² ģµėė¤.
ź° ģė£ķģ ėķ ģģøķ ķ¹ģ± ė° źø°ė„ė¤(methods ė±) ģ ź°ė³ģ ģ¼ė” ė¤ė£Øź² ģµėė¤.
- Data Type/Data Structureģ ģ¢ ė„ ė° źø°ė³ø ķ¹ģ§
- Mutable object/Immutable object
- Iterable object
[Tip!]
objectģ typeģ ķģøķź³ ģ¶ģ ė pythonģ ģėtype(object)
넼 ģ¬ģ©ķė©“ ė©ėė¤. objectģ typeģ ė°ķķ“ģ¤ėė¤.
ķģ“ģ¬ģģ ģ°ģ“ė ģė£ķģ ģ“ 3ź°ģ§ź° 씓ģ¬ķ©ėė¤.
š©ķģ“ģ¬ģģ ģ°ģ“ė ģė£ķ(ģģ¹ ģė£ķ ė° źµ°ģ§ ģė£ķ(str), ė¶ ģė£ķ)
int
(ģ ģ, integer),float
(ģ¤ģ, float),str
(문ģģ“, string),bool
(ė¶, boolean)
int
ģė£ķģ ģ ģ typeģø data넼 ėķė
ėė¤. ģ¼ė°ģ ģ¼ė” 10ģ§ģ넼 ėķė
ėė¤.
ė¤ė„ø ģ§ģ(2ģ§ģ, 8ģ§ģ, 16ģ§ģ)ģģ ėķė“ź³ ģ¶ģ ė ģģ ģ ėģ¬ė„¼ ė¶ģ“ė©“ ė©ėė¤.
ėķ, ķØģ넼 ģ¬ģ©ķ“ 10ģ§ģ ģ ģ넼 ė¤ė„ø ģ§ģė” ėķė¼ ģ ģģµėė¤.
ex> 10
, 23
, 123
, -1
float
ģė£ķģ ģ¤ģ typeģø data넼 ėķė
ėė¤.
ex> 1.0
, 2.3
, 12.3
, -1.0
, 2**(1/2)
str
ģė£ķģ 문ģģ“ typeģø data넼 ėķė
ėė¤.
ķ° ė°ģ“ķ(""
) ėė ģģ ė°ģ“ķ(''
)ģģ ķ
ģ¤ķøė„¼ ģ
ė „ķØģ¼ė”ģØ ė§ė¤ģ“ģ§ė©°, ģ“ė¬ķ ķķ넼 ź°ģ§ė ģė£ķģ string ģė£ķģ“ė¼ź³ ķ©ėė¤.
ķ° ė°ģ“ķģ ģģ ė°ģ“ķ ź°ģ ģ°Øģ“ė ģģµėė¤.
문ģģ“ģ 첫ė²ģ§ø 문ģė¶ķ° ģģėė” [0], [1], [2], ... ģ ģøė±ģ¤ź° ė¶ģ¬ė©ėė¤.
python3ģģ 문ģģ“ģ źø°ė³øģ ģ¼ė” ģ ėģ½ė ģ ėė¤. ė°ė¼ģ ķźøģ ģ¬ģ©ģ“ ķøė¦¬ķ©ėė¤.
ģėģ ź°ģ“ ģ
ė „ ģ, ź°ķ문ģ(enter, \n
)넼 ģ
ė „ķģ§ ģź³ ė ģ“ģģ ģ¤ģ ź°ģ§ 문ģģ“ģ ė§ė¤ ģ ģģµėė¤.
> In [1] : a = """One
Two
Three"""
> In [2] : a
> Out [2] : 'One\nTwo\nThree'
'string'
, '2'
, "12.3"
, "[1,2,3,4]"
, "(2,3)"
bool
ģė£ķģ ė¶ė¦° typeģø data넼 ėķė
ėė¤.
ė¶ė¦° ķģ
ģ“ė, ģ°ø ėė ź±°ģ§, 0 ėė 1ź³¼ ź°ģ ķģ
ģ ė»ķ©ėė¤.
Pythonģģė ė¶ė¦° ķģ
ģ True
ģ False
ė” ź·ģ ķģ¼ė©°, ģ“ė¬ķ ķķ넼 ź°ģ§ė ģė£ķģ bool ģė£ķģ“ė¼ź³ ķ©ėė¤.
True == 1, False == 0 ģ ė¶ė¦° ź°ģ ź°ģ§ėė¤.
ex> True
, False
, True==False
, not True
, True and False
, False or False
ķģ“ģ¬ģģ ģ°ģ“ė ģė£źµ¬ģ”°ė ģ“ 4ģ§ź° 씓ģ¬ķ©ėė¤.
š©ķģ“ģ¬ģģ ģ°ģ“ė ģė£źµ¬ģ”°(źµ°ģ§ ģė£ķ)
list
(리ģ¤ķø, list),tuple
(ķķ, tuple),set
(ģ§ķ©, set),dict
(ģ¬ģ , dictionary)
list
ģė£źµ¬ģ”°ė ė°°ģ“ź³¼ ģ ģ¬ķė©°, ģė£ė¤(items)ģ index number넼 ė¶ģ¬ ģ ģ„ķ©ėė¤. 첫ė²ģ§ø ģė£ė¶ķ° ģģėė” [0], [1], [2], ... ģ ģøė±ģ¤ź° ė¶ģ¬ė©ėė¤.
ėź“ķø([]
) ģģ ģė£ė„¼ ģ ģ„ķė©°, ė¹ģ“ģė 리ģ¤ķøė []
ė” ģ ģķ©ėė¤. ģ¼ķ(,)넼 ķµķ“ ģė£ė¤(items)ģ źµ¬ė¶ķ©ėė¤.
ė°°ģ“(array, Cģøģ“) ź³¼ ė¬ė¦¬ 리ģ¤ķøģė int
, float
ģøģėstring
, bool
, tuple
, dict
ė± ė¤ģķ ķķģ ģė£ź° ģ ģ„ė ģ ģģ¼ė©°, ķėģ 리ģ¤ķøģ ė¤ģķ ķķģ itemė¤ģ ģ ģ„ķ ģ ģģµėė¤. ėķ, 리ģ¤ķøė list
ź° list
넼 ķ¬ķØķė nestedź° ź°ė„ķ©ėė¤. ģ“넼 ķģ©ķ“ 2D Matrix넼 구ķķ ģ ģģµėė¤.
ė¹ ė¦¬ģ¤ķø(empty list)ė ģėģ ź°ģ“ ė§ė¤ ģ ģģµėė¤. ģ°øź³ ė” ģėģ ź°ģ“ ė³ģ넼 ģ ģøķź³ ė¦¬ģ¤ķøė„¼ ģ ė „ķ“ģ£¼ė ź²ģ ģ“źø°ķė¼ź³ ķėė°, ģ“źø°ķ ģ 리ģ¤ķø ģģ ź°ģ“ ģģ“ė 묓방ķ©ėė¤. ė³ģ넼 ģ ģøķź³ ź°ģ ģ ė „ķ“ģ£¼ė ź² ģ첓넼 ģ“źø°ķė¼ź³ ķ©ėė¤.
#ė¹ ė¦¬ģ¤ķøė„¼ ė§ėė 첫ė²ģ§ø ė°©ė²
> In [1] : a = []
#ė¹ ė¦¬ģ¤ķøė„¼ ė§ėė ėė²ģ§ø ė°©ė²
> In [2] : b = list()
[,]
, [1,2,3]
, [[1,2,], 3, 3.0, "string", True, {1,4,5}, (0,1), {'a' : 1}]
tuple
ģė£źµ¬ģ”°ė list
ģ ģ ģ¬ķė©°, ģė£ė¤(items)ģ index number넼 ė¶ģ¬ ģ ģ„ķ©ėė¤. 첫ė²ģ§ø ģė£ė¶ķ° ģģėė” [0], [1], [2], ... ģ ģøė±ģ¤ź° ė¶ģ¬ė©ėė¤.
ģź“ķø(()
) ģģ ģė£ė„¼ ģ ģ„ķė, ģź“ķøė ģėµ ź°ė„ķ©ėė¤.
ė¹ģ“ģė ķķģ ()
ė” ģ ģķė©° ģ¼ķ(,)넼 ķµķ“ ģė£ė¤(items)ģ źµ¬ė¶ķ©ėė¤.
listģ ė§ģ°¬ź°ģ§ė” int
, float
ģøģėstring
, bool
, tuple
, dict
ė± ė¤ģķ ķķģ ģė£ź° ģ ģ„ė ģ ģģ¼ė©°, ķėģ ķķģ ė¤ģķ ķķģ memberė¤ģ ģ ģ„ķ ģ ģģµėė¤. ėķ, ķķģ tuple
ģ“ tuple
ģ ķ¬ķØķė nestedź° ź°ė„ķ©ėė¤.
리ģ¤ķøģ ķķģ ģ°Øģ“ė ķģ ėģ¬ mutable object/immutable objectģ ź“ė Ø ģģµėė¤.
ė¹ ķķ(empty tuple)ģ ģėģ ź°ģ“ ė§ė¤ ģ ģģµėė¤.
#ė¹ ķķģ ė§ėė 첫ė²ģ§ø ė°©ė²
> In [1] : a = ()
#ė¹ ķķģ ė§ėė ėė²ģ§ø ė°©ė²
> In [2] : b = tuple()
()
, (1,2,3)
, ([1,2,], 3, 3.0, "string", True, {1,4,5}, (0,1), {'a' : 1})
set
ģė£źµ¬ģ”°ė list
, dict
ģ ģ ģ¬ķė©°, ģģź° ģźø°(unordered) ė문ģ index ģ¬ģ©ģ“ ė¶ź°ė„ķ©ėė¤.
ģ¤ź“ķø({}
) ģģ ģė£ė„¼ ģ ģ„ķė©°, ģ¼ķ(,)넼 ķµķ“ ģė£ė¤(items)ģ źµ¬ė¶ķ©ėė¤.
ā {}
ė dict
ė” ģ ģėė©°, set
ģ“ ģėė¼ė ģ ģ 주ģķėė” ķ©ģė¤.
set ģģė int
, float
, string
, bool
, tuple
ė§ģ“ ģ ģ„ė ģ ģģ¼ė©°, ķėģ setģ ė¤ģķ ķķģ elementė¤ģ ģ ģ„ķ ģ ģģµėė¤.
setģ ģ§ķ©ź³¼ ģ ģ¬ķ ģ±ģ§ģ ģ§ė
źø° ė문ģ ģ§ķ©ź³¼ ź“ė Øė ģ°ģ°ģ ģķķ ģ ģģµėė¤.
ėķ, ģ¤ė³µ elementė ģ ģ„ķ ģ ģģµėė¤. ė§ģ¼ ģ¤ė³µė elementź° ģģ ź²½ģ°, ģėģ ź°ģ“ ģ¤ė³µģ ģ ź±°ķ©ėė¤.
#setģ ģ¤ė³µė ģģ넼 ģ ģ„ķė©“ ģ¤ė³µģ ģ ź±°ķ©ėė¤.
> In [1] : a = {True,1,2,3,3.0,4}
> In [2] : a
> Out [2] : {1,2,3,4} #True == 1, 3 == 3.0 ģ“ėÆė”
#ė¹ setģ ė§ėėė°©ė² : ķ“ėģ¤ ģģ±ģ ģ“ģ©
> In [1] : a = set()
{0,1}
, {1}
, {3, "string", (0,1), True}
dict
ģė£źµ¬ģ”°ė ķ¤-ź° ģ(key-value pair)ģ 매ķ(mapping)ķ©ėė¤. ģ¦, ģģģ ķ¤ģ ź°ģ ģė” ģ°ź²°ģ§ģ“ ģė£ė„¼ ģ ģ„ķ©ėė¤.
ģ¤ź“ķø({}
) ģģ ķ¤-ź° ģė¤ģ ģ ģ„ķė©°, {key:value}
ķķė” ė§¤ķķ©ėė¤.ģ¼ķ(,)넼 ķµķ“ ģė£ė¤(items)ģ źµ¬ė¶ķ©ėė¤. ė¹ģ“ģė dictionaryė{}
ė” ģ ģķ©ėė¤.
keyģė immutable objctė§ ģ¬ģ©ķ ģ ģģµėė¤.
mutableź³¼ immutableģ ź“ė Øė ė“ģ©ģ ģėģģ ė¤ė£Øź² ģµėė¤.
ė¹ dictionary(empty dictionary)ė ģėģ ź°ģ“ ė§ė¤ ģ ģģµėė¤.
#ė¹ dict넼 ė§ėė 첫ė²ģ§ø ė°©ė²
> In [1] : a = {}
#ė¹ dict넼 ė§ėė ėė²ģ§ø ė°©ė²
> In [2] : b = dict()
{'a' : 0,3: 1}
, {1 : [1,2,34]}
, {3:{1,2,3,4}, 0: "string", (0,1) : 'a', True : 0}
[Tip!]
objectģ typeģ ė³ķķź³ ģ¶ģ ė pythonģ ģė Class constructor(ķ“ėģ¤ ģģ±ģ)넼 ģ“ģ©ķė©“ ė©ėė¤. ģģ±ģė ė©ģėģ ķ ģ¢ ė„ģ“ė©°, ģģøķ ė“ģ©ģclass
넼 ė¤ė£° ė ģ“ģ¼źø°ķėė” ķź² ģµėė¤.
- int(object)
- str(object)
- float(object)
- list(object)
- tuple(object)
- set(object)
mutable objectė ź°ģ“ ė³ķ ģ ģė object넼 ė»ķ©ėė¤.
ģ½ź² ė§ķ“, objectģ ź°ė³ element ź°ģ“ ģģ ź°ė„ķė¤ė©“ mutable objectģ
ėė¤.
ė©ėŖØė¦¬ 주ģ 츔멓ģģ 'mutableķė¤'ė¼ė ź²ģ, objectģ ė©ėŖØė¦¬ 주ģ ė³ź²½ ģģ“ objectģ ź°ė³ elementź°ģ ė³ź²½ķ ģ ģė¤ė ź²ģ ģ미ķ©ėė¤.
[Tip!]
objectģ ė©ėŖØė¦¬ 주ģ넼 ģź³ ģ¶ģ ė pythonģ ģėid(object)
넼 ģ¬ģ©ķė©“ ė©ėė¤. objectģ ė©ėŖØė¦¬ 주ģ넼 ė°ķķ“ģ¤ėė¤.
mutable objectė ģėģ ź°ģµėė¤. ė§ģ¼ ģėģ objectė¤ģ“ ģ ė§ mutableķģ§ ģź³ ģ¶ė¤ė©“ ģģ ģė id()넼 ģ“ģ©ķ“ objectģ ģģ ź°ģ ģģ ķ“ź°ė©° ģ§ģ ķģøķ“볓ėė” ķ©ģė¤.
list
ģøė±ģ¤ė„¼ ķµķ ģ ź·¼ģ¼ė” ģģ ź°ģ ģģ ģ“ ź°ė„ķ©ėė¤.
dict
ķ¤(key)넼 ķµķ ģ ź·¼ģ¼ė” ź°(value)ģ ģģ ģ“ ź°ė„ķ©ėė¤.
set
ķØģ넼 ķµķ ģ ź·¼ģ¼ė” ģģ ź°ģ ģģ ģ“ ź°ė„ķ©ėė¤.
immutable objectė mutable objectģ ė°ėėė ź°ė
ģ
ėė¤.
ź°ģ“ ė³ķ ģ ģė object넼 ė»ķ©ėė¤.
ģ½ź² ė§ķ“, objectģ ź°ė³ element ź°ģ“ ģģ ė¶ź°ė„ķė¤ė©“ immutable objectģ
ėė¤.
ė©ėŖØė¦¬ 주ģ 츔멓ģģ 'immutableķė¤'ė¼ė ź²ģ, objectģ ė©ėŖØė¦¬ 주ģ ė³ź²½ ģģ“ objectģ ź°ė³ elementź°ģ ė³ź²½ķ ģ ģė¤ė ź²ģ ģ미ķ©ėė¤.
[Tip!]
pythonģ ė³ģģ ź³µź°ģ ķ ė¹ķź³ , ķ“ė¹ ė³ģģ ź°ģ ģ ģ„ķė ķģģ“ ģėėė¤.
pythonģģ ė³ģė pointerģ ģ ģ¬ķź² ėģķźø° ė문ģ a = 3ģ¼ ė, id(3)ģ ź°ź³¼ id(a)ģ ź°ģ“ ėģ¼ķ©ėė¤. ģ“ķ“ź° ź°ģ§ ģėė¤ė©“ ģ§ģ id()넼 ģ“ģ©ķ“ ķģøķ“볓ėė” ķ©ģė¤.
immutable objectė ģėģ ź°ģµėė¤. ė§ģ¼ ģėģ objectė¤ģ“ ģ ė§ immutableķģ§ ģź³ ģ¶ė¤ė©“ id()넼 ģ“ģ©ķ“ ģ§ģ ķģøķ“볓ėė” ķ©ģė¤.
int
str
ģøė±ģ¤ė„¼ ķµķ ģ ź·¼ģ¼ė” ģģ ź°ģ ģģ ģ“ ė¶ź°ė„ķ©ėė¤.
tuple
ģøė±ģ¤ė„¼ ķµķ ģ ź·¼ģ¼ė” ģģ ź°ģ ģģ ģ“ ė¶ź°ė„ķ©ėė¤.
Iterable objectė, ė°ė³µ ź°ė„ķ ź°ģ²“넼 ė§ķ©ėė¤.
iterable objectė iterator넼 ź°ģ§ź³ ģź³ , ė°ė³µė¬øģģė iterator넼 ģ¬ģ©ķ“ ķėģ© ģ ź·¼ķ©ėė¤.
ė°ė¼ģ objectģ element넼 ķėģ© ģ°Øė”ė” ė°ķ ź°ė„ķė©° for문 ė±ģ ķµķ“ elementė¤ģ ķėģ© źŗ¼ė¼ ģ ģģµėė¤.
enumerate(object)
넼 ķµķ“ indexģ element넼 ķØź» ė°ķ ķ ģ ģģµėė¤.#enumerate
> In [1] : numbers = [0, 1, 2, 3, 4]
> In [2] : for i, v in enumerate(numbers):
print(i, v)
> Out [2] : 0 0
1 1
2 2
3 3
4 4
str
list
dict
set
tuple
range
: ģ ģģ ģ“ģ ģģ±ķ©ėė¤. ģģøķ ė“ģ©ģ ė°ė³µė¬øģ ė¤ė£Øė©° ģ§ķķź² ģµėė¤.
ģ“ė² ģź°ģė ģė£ķź³¼ ģė£ źµ¬ģ”°, mutable objectģ immutable object, iterable objectģ ėķ“ ģģ볓ģģµėė¤.
ģė 리ģ¤ķøė„¼ ģ²ģ²ķ ģ½ģ“볓멓ģ ģ¤ė ķģµķ ė“ģ©ģ ė³µģµķ“볓ėė” ķ©ģė¤.
ā¼ ģė£ķ(data type)ģ ģ¢
ė„ģ ķķ
ā¼ ģė£ źµ¬ģ”°(data structure)ģ ģ¢
ė„ģ ģģ± ė°©ė², ķ¹ģ§, ģ ģ„ķ ģ ģė ģė£ģ ķķ
ā¼ mutable objectģ ģ ģģ ģ¢
ė„
ā¼ immutable objectģ ģ ģģ ģ¢
ė„
ā¼ iterable objectģ ģ ģģ ģ¢
ė„ ė° ķ¹ģ§
ā¼ objectģ ķė³ķ, type(), id(), enumerate()