๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“๐Ÿ’ช/Python

Python ํŠน๊ฐ• (2)

by ์ˆ˜์จ”์•™ 2022. 9. 6.

python ํ™œ์šฉ

์ž๋ฃŒํ˜• ํ™œ์šฉํ•˜๊ธฐ

๋”ํ•˜๊ธฐ  x + y   
๋นผ๊ธฐ x - y  
๊ณฑํ•˜๊ธฐ x * y  
์ œ๊ณฑ x ** y 2**16 = 65536
๋‚˜๋ˆ„๊ธฐ x / y int์™€ int๋ฅผ ๋‚˜๋ˆ„๋”๋ผ๋„ ์—ฐ์‚ฐ๊ฒฐ๊ณผ๋Š” ํ•ญ์ƒ float
ex) 4 / 2 = 2.0,   5 / 2 = 2.5
๋‚˜๋จธ์ง€์—†๋Š” ๋‚˜๋ˆ„๊ธฐ x // y  ๋Š˜ ์ •์ˆ˜๋กœ ๋–จ์–ด์ง„๋‹ค
ex) 4 / 2 = 2,   5 / 2 = 2
๋‚˜๋จธ์ง€ x % y 5 % 2 = 1

 

dictionary

key:value๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ key๋ฅผ ์‚ฌ์šฉํ•ด value๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

products = {
    "bread": 1000,
    "milk": 3000,
    "egg": 6000,
}

print(products["bread"])
print(products["milk"])
print(products["egg"])
# result print
"""
1000
3000
6000
"""

# ๋งŒ์•ฝ ์กด์žฌํ•˜์ง€ ์•Š๋Š” key๋กœ value๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค ์‹œ๋„ํ•  ๋•Œ์—๋Š” ์—๋Ÿฌ ๋ฐœ์ƒ
print(products["drink"])
"""
Traceback (most recent call last):
  File "sample.py", line 18, in <module>
    print(products["drink"])
KeyError: 'drink'
"""

# ์ด ๊ฒฝ์šฐ, .get์„ ์‚ฌ์šฉํ•ด ํ•ด๋‹น key๊ฐ€ ์—†์„ ๋•Œ ์‚ฌ์šฉ๋  ๊ฐ’์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค
print(products.get("egg", 0)) # egg key๊ฐ€ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น value ์ถœ๋ ฅํ•˜์ง€๋งŒ
print(products.get("drink", 0)) # drink key๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— 0 ์ถœ๋ ฅํ•œ๋‹ค
# result print
"""
6000
0
"""

 

dictionary ์ž๋ฃŒํ˜•์€ ์ž์œ ๋กญ๊ฒŒ ๊ฐ’์„ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.

products = {
    "bread": 1000,
    "milk": 3000,
    "egg": 6000,
}

products["bread"] = 1500 # bread key์˜ value๋ฅผ 1500์œผ๋กœ ๋ณ€๊ฒฝ
products["drink"] = 2000 # drink key๋ฅผ ๊ฐ€์ง„ value ์ถ”๊ฐ€
'''
{
    "bread": 1500,
    "milk": 3000,
    "egg": 6000,
    "drink": 2000
}
'''

del(products["milk"]) # milk key๋ฅผ ๊ฐ€์ง„ key: value ์Œ ์‚ญ์ œ
'''
{
    "bread": 1500,
    "egg": 6000,
    "drink": 2000
}
'''

 

 

 

์—ฐ์‚ฐ ์ถ•์•ฝ ๋ฌธ๋ฒ•

sum_numbers = sum_numbers + i

=> sum_numbers += i

ex)

number = 10
number += 5

print(number)
# 15

 

string

 

๋ฌธ์ž์—ด์€ +์™€ *๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

๋ฌธ์ž + ๋ฌธ์ž = ๋ฌธ์ž!

"hello " + "world" = hello world

๊ณฑํ•˜๊ธฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€!!

 

๋ฐฐ์—ด๋„ for ๋กœ ๋Œ๋ฆด ์ˆ˜ ์žˆ๋‹ค!.

sample_string = "hello world!!"

for i in sample_string:
    print(i)
    
'''
h
e
l
l
o
 
w
o
r
l
d
!
!
'''

 

fstring 

string์— ๋ณ€์ˆ˜๋ฅผ ๋‹ด๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

n1 = 5
n2 = 10

# ์•„๋ž˜ ์„ธ๊ฐ€์ง€ ๋ฐฉ๋ฒ• ๋ชจ๋‘ ๋™์ผํ•œ ๊ฒฐ๊ณผ๋ฌผ์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
print("n1 : %s, n2 : %s, sum : %s" % (n1, n2, n1+n2)) # old Style
print("n1 : {}, n2 : {}, sum : {}".format(n1, n2, n1+n2)) # ~ python < 3.6
print(f"n1 : {n1}, n2 : {n2}, sum : {n1+n2}") # ~ python >= 3.6

# result print
"""
n1 : 5, n2 : 10, sum : 15
n1 : 5, n2 : 10, sum : 15
n1 : 5, n2 : 10, sum : 15
"""

 

์˜ˆ์ „ ๋ฒ„์ „์„ ์“ฐ๋Š” ํšŒ์‚ฌ๋„ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค ์•Œ์•„๋‘๋Š”๊ฒƒ์ด ์ข‹๋‹ค!

# float์˜ ์†Œ์ˆ˜์ ์„ ์›ํ•˜๋Š” ์ž๋ฆฌ๊นŒ์ง€ ์ถœ๋ ฅํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
PIE = 3.14159265358979

print(f"pie : {PIE}")     # pie : 3.14159265358979
print(f"pie : {PIE:.2f}") # pie : 3.14

 

 

list [ ]

๊ฐ’์„ ์›ํ•˜๋Š”๋Œ€๋กœ ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ ๊ฐ€๋Šฅํ•˜๋‹ค.

numbers = [1, 2, 3, 4, 5]

numbers.append(6) # numbers์˜ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ์— 6 ์ถ”๊ฐ€
print(numbers)
# = [1, 2, 3, 4, 5, 6]

print(numbers[5])
# 6

numbers.remove(1) # numbers์—์„œ 1์ด๋ผ๋Š” ๊ฐ’์„ ๊ฐ€์ง„ ์š”์†Œ ์‚ญ์ œ
print(numbers)
# = [2, 3, 4, 5, 6]

numbers[-1] = 7 # numbers์˜ ๋งˆ์ง€๋ง‰ ์š”์†Œ(6)์˜ ๊ฐ’์„ 7๋กœ ๋ณ€๊ฒฝ
print(numbers)
#= [2, 3, 4, 5, 7]

last_num = numbers.pop() # list์—์„œ ๋งˆ์ง€๋ง‰ ์š”์†Œ ์‚ญ์ œ ํ›„ ๋ณ€์ˆ˜์— ํ• ๋‹น
print(numbers)
# last_num = 7
# = [2, 3, 4, 5]

์ˆซ์ž, ๋ฌธ์ž ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜• ์‚ฌ์šฉ ๊ฐ€๋Šฅ

indexing, slicing์„ ์‚ฌ์šฉํ•ด์„œ ์›ํ•˜๋Š” ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

len()์„ ์ด์šฉํ•ด์„œ list์˜ ๊ธธ์ด๋„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค!! print(len(numbers))

alphabets = ["a", "b", "c", "d", "e", "f"]

# indexing์„ ํ™œ์šฉํ•ด ์›ํ•˜๋Š” ๊ฐ’ ๊ฐ€์ ธ์˜ค๊ธฐ
print(alphabets[0])   # alphabets์˜ ์ฒซ ๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์ถœ๋ ฅ
print(alphabets[2])   # alphabets์˜ ์„ธ ๋ฒˆ์งธ ์š”์†Œ๋ฅผ ์ถœ๋ ฅ
print(alphabets[-1])  # alphabets์˜ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ์ถœ๋ ฅ

# index slicing ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•ด ์›ํ•˜๋Š” ๊ฐ’๋“ค ๊ฐ€์ ธ์˜ค๊ธฐ
print(alphabets[0:4]) # alphabets์˜ index๊ฐ€ 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ  4๋ณด๋‹ค ์ž‘์€ ์š”์†Œ ์ถœ๋ ฅ

# result print
"""
a
c
f
['a', 'b', 'c', 'd'] # alphabets ์˜ 0, 1, 2, 3 index๊ฐ€ ์ถœ๋ ฅ๋จ
"""

 

 

tuple ( )

๋ฆฌ์ŠคํŠธ๋กœ ๊ฑฐ์˜ ๋‹ค ํ•  ์ˆ˜ ์žˆ๊ธฐ๋„ ํ•ด์„œ ๋ณดํ†ต ์ž˜ ์•ˆ์“ฐ์ธ๋‹ค!

๋ฆฌ์ŠคํŠธ์ฒ˜๋Ÿผ indexing ๊ฐ€๋Šฅํ•˜๊ณ , ์š”์†Œ์— ๋‹ค์–‘ํ•œ ์ž๋ฃŒํ˜•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

ํŠœํ”Œ์—์„œ๋Š” ์š”์†Œ์˜ ๊ฐ’์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋‹ค. ์ถ”๊ฐ€๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค

len() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด tuple์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

numbers = (1, 2, 3, 4, 5)

numbers += (6, 7) # numbers์˜ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ์— 6, 7 ์ถ”๊ฐ€
print(numbers)
# (1, 2, 3, 4, 5, 6, 7)

numbers[-1] = 8
# tuple ์ž๋ฃŒํ˜•์€ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ ค๊ณ  ์‹œ๋„ํ•  ๊ฒฝ์šฐ ์—๋Ÿฌ ๋ฐœ์ƒ
"""
Traceback (most recent call last):
  File "sample.py", line 7, in <module>
    numbers[-1] = 8
TypeError: 'tuple' object does not support item assignment
"""

 

 

 set { }

์ด๊ฒƒ๋„ ๋ฆฌ์ŠคํŠธ๋ž‘ ๋น„์Šทํ•˜์ง€๋งŒ indexing๊ณผ slicing์€ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค

์ค‘๋ณต๋œ ๊ฐ’๋„ ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค!

len() ํ•จ์ˆ˜๋งŒ ์‚ฌ์šฉํ•ด์„œ ๊ธธ์ด๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

numbers = {1, 2, 3, 4, 5, 5, 3}
print(numbers)
# numbers = {1, 2, 3, 4, 5} / ์ค‘๋ณต๋œ ๊ฐ’์„ ํฌํ•จํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— 5๋Š” ํ•˜๋‚˜๋งŒ ์ €์žฅ

print(numbers[0]) # set ์ž๋ฃŒํ˜•์€ index๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Œ
"""
Traceback (most recent call last):
  File "sample.py", line 4, in <module>
    print(numbers[0])
TypeError: 'set' object is not subscriptable
"""

 

 

dictionary ์ค‘์š”ํ•˜๋‹ค!!

Key : Value๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ key๋ฅผ ์‚ฌ์šฉํ•ด์„œ value๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค!

: ๋Œ€์‹  ,์„ ์‚ฌ์šฉํ•˜๋ฉด set์ด ๋œ๋‹ค!

products = {
    "bread": 1000,
    "milk": 3000,
    "egg": 6000,
}

print(products["bread"])
print(products["milk"])
print(products["egg"])
# result print
"""
1000
3000
6000
"""

 

get.()

products = {
    "bread": 1000,
    "milk": 3000,
    "egg": 6000,
}

print(products["bread"])
print(products["milk"])
print(products["egg"])
# result print
"""
1000
3000
6000
"""

# ๋งŒ์•ฝ ์กด์žฌํ•˜์ง€ ์•Š๋Š” key๋กœ value๋ฅผ ๊ฐ€์ ธ์˜ค๋ ค ์‹œ๋„ํ•  ๋•Œ์—๋Š” ์—๋Ÿฌ ๋ฐœ์ƒ
print(products["drink"])
"""
Traceback (most recent call last):
  File "sample.py", line 18, in <module>
    print(products["drink"])
KeyError: 'drink'
"""

# ์ด ๊ฒฝ์šฐ, .get์„ ์‚ฌ์šฉํ•ด ํ•ด๋‹น key๊ฐ€ ์—†์„ ๋•Œ ์‚ฌ์šฉ๋  ๊ฐ’์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค
print(products.get("egg", 0)) # egg key๊ฐ€ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น value ์ถœ๋ ฅํ•˜์ง€๋งŒ
print(products.get("drink", 0)) # drink key๊ฐ€ ์กด์žฌํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— 0 ์ถœ๋ ฅํ•œ๋‹ค
# result print
"""
6000
0
"""

์—†์€ key๊ฐ’์„ ๊ฐ€์ ธ์˜ค๋ ค๊ณ ํ•˜๋ฉด error๊ฐ€ ๋ฐœ์ƒํ•˜๋Š”๋ฐ

์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” .get()์„ ์ด์šฉํ•˜๋ฉด ๋œ๋‹ค!

get ์•ˆ์— ์—๋Ÿฌ๊ฐ€ ๋‚ฌ์„๋•Œ ์ถœ๋ ฅํ•  ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚˜์ง€ ์•Š๊ณ , ์ถœ๋ ฅ๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค!

 

dictionary๋Š” ์ถ”๊ฐ€, ์ˆ˜์ •, ์‚ญ์ œ ๊ฐ€๋Šฅํ•˜๋‹ค!

products = {
    "bread": 1000,
    "milk": 3000,
    "egg": 6000,
}

products["bread"] = 1500 # bread key์˜ value๋ฅผ 1500์œผ๋กœ ๋ณ€๊ฒฝ
products["drink"] = 2000 # drink key๋ฅผ ๊ฐ€์ง„ value ์ถ”๊ฐ€
print(products)
'''
{
    "bread": 1500,
    "milk": 3000,
    "egg": 6000,
    "drink": 2000
}
'''

del(products["milk"]) # milk key๋ฅผ ๊ฐ€์ง„ key: value ์Œ ์‚ญ์ œ
print(products)
'''
{
    "bread": 1500,
    "egg": 6000,
    "drink": 2000
}
'''

 

 

 


์ž๋ฃŒํ˜• ๋ณ€ํ™˜

 

 

string -> int

string_number = "10"
integer_number = int(string_number)

# type() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ํŠน์ • ๊ฐ’์˜ ์ž๋ฃŒํ˜•์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
print(string_number)
print(integer_number)
print(type(string_number))
print(type(integer_number))

# result print
"""
10
10
<class 'str'>
<class 'int'>
"""
# ๋˜‘๊ฐ™์€ ๊ฐ’์ด๋ผ๋„ type์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž๋ฃŒํ˜•์€ ํ•ญ์ƒ ์œ ์˜ํ•ด์„œ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

# ์ž๋ฃŒํ˜• ๋ณ€ํ™˜ ์กฐ๊ฑด์ด ๋งž์ง€ ์•Š์„ ๊ฒฝ์šฐ, ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
string_number = "number"
integer_number = int(string_number)
"""
Traceback (most recent call last):
  File "sample.py", line 21, in <module>
    integer_number = int(string_number)
ValueError: invalid literal for int() with base 10: 'number'
"""

๋˜‘๊ฐ™์€ ๊ฐ’์ด๋ผ๋„ type์ด ๋‹ค๋ฅด๋ฉด ๊ฐ™์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์œ ์˜ํ•ด์•ผํ•œ๋‹ค!

 

 

list -> tuple -> set

sample_list = [1, 2, 3, 4, 5]
sample_tuple = tuple(sample_list)
sample_set = set(sample_tuple)

print(sample_list)
print(sample_tuple)
print(sample_set)

# result print
"""
[1, 2, 3, 4, 5]
(1, 2, 3, 4, 5)
{1, 2, 3, 4, 5}
"""

set์„ list๋กœ ๋ฐ”๊พธ๋Š”๊ฒƒ๋„ ๊ฐ€๋Šฅ!!

 

 

any -> string

number = 10
numbers = [1, 2, 3, 4, 5]
sample_dict = {"key": "value"}
flag = True

print(str(number))
print(str(numbers))
print(str(sample_dict))
print(str(flag))

# result print
"""
10
[1, 2, 3, 4, 5]
{'key': 'value'}
True
"""
# ์ถœ๋ ฅ ๋œ ๊ฐ’๋“ค์€ ๋ชจ๋‘ string ์ž๋ฃŒํ˜•

 

 

 


 

ํ•จ์ˆ˜

 

ํ•จ์ˆ˜์„ ์–ธ

def print_hello_world():
    print("hello world!!")

# ์„ ์–ธํ•œ ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด ํ•จ์ˆ˜ ์•ˆ์— ์ž‘์„ฑ ๋œ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
print_hello_world() # hello world!!

 

๋ฆฌํ„ด๋ฐ›๊ธฐ

def multiply(a, b):
    return a * b

num1 = 5
num2 = 10

result = multiply(num1, num2)
# result = 50

 

 

importํ•ด์„œ  ๋‹ค๋ฅธํŒŒ์ผ ์ฝ”๋“œ ์‚ฌ์šฉํ•˜๊ธฐ

 

a.py, main.py, folder๊ฐ€ ์žˆ๊ณ ,

folder ์•ˆ์— b.py, c.py ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜์ž

 

 

main.py ์—์„œ a.py๋ฅผ ๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ•˜๊ธฐ

 

1.

# a.py
def a_funtion():
    print("execute a")

# main.py
import a # a ํŒŒ์ผ์„ import
a.a_funtion() # a ํŒŒ์ผ์˜ a_funtion() ์‚ฌ์šฉ

 

2.

# a.py
def a_funtion():
    print("execute a")

# main.py
from a import a_funtion # a ํŒŒ์ผ์— ์žˆ๋Š” a_funtion์„ import
# ์ด ๊ฒฝ์šฐ ์œ„ ์˜ˆ์ œ์™€ ๋‹ค๋ฅด๊ฒŒ, a.a_funtion๊ฐ€ ์•„๋‹Œ a_funtion์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.
a_funtion() # execute a

 

3.

# a.py
def a_funtion():
    print("execute a")


# main.py
from a import * # a ํŒŒ์ผ์— ์žˆ๋Š” ๋ชจ๋“  ํ•จ์ˆ˜๋ฅผ import
a_funtion() # execute a

 

import ์‹œ์— * ์ง€์–‘ํ•˜๋ผ๊ณ  ํ•œ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ฝ”๋“œ๊ฐ€ ๋งŽ์•„์กŒ์„ ๋•Œ 

์–ด๋””์„œ import๋ฅผ ํ•ด์˜จ๊ฑด์ง€ ์ถœ์ฒ˜๋ฅผ ์•Œ๊ธฐ๊ฐ€ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

 

 

๋‹ค๋ฅธ ํด๋”์— ์žˆ๋Š” ํŒŒ์ผ importํ•˜๊ธฐ

# folder/b.py
def b_funtion():
    print("execute b")

# folder/c.py
def c_funtion1():
    print("execute c1")

def c_funtion2():
    print("execute c2")

# main.py
from folder import b
from folder.c import *

b.b_funtion() # execute b
c_funtion1() # execute c1
c_funtion2() # execute c2

 

 

๋ณ€์ˆ˜๋„ ๋™์ผํ•˜๊ฒŒ import ํ•ด์™€์„œ ์‚ฌ์šฉํ•œ๋‹ค

# ๋‹ค๋ฅธ ํŒŒ์ผ์˜ ๋ณ€์ˆ˜ ๋˜ํ•œ ํ•จ์ˆ˜์™€ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ from / import๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
# folder/b.py
PIE = 3.14
HELLO = "world"

# main.py / case 1
from folder.b import * # *๊ถŒ์žฅX* ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ๋ณ€์ˆ˜ import

print(PIE) # 3.14
print(HELLO) # "world"

# main.py / case 2
from folder.b import PIE, HELLO # ์‚ฌ์šฉ ํ•  ๋ณ€์ˆ˜๋ฅผ ๊ฐ๊ฐ import

print(PIE) # 3.14
print(HELLO) # "world"

# main.py / case 3
from folder import b # *๊ถŒ์žฅO* b ํŒŒ์ผ import
print(b.PIE) # 3.14
print(b.HELLO) # world

 

 

'''
python์—์„œ ๋‹ค๋ฅธ ํŒŒ์ผ์— ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์—๋Š” ์–ด๋””์„œ(from) ์–ด๋–ค(import) ๊ฒƒ์„
๊ฐ€์ ธ์™€์„œ ์‚ฌ์šฉํ• ์ง€ ์ง€์ •ํ•ด ์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.
'''

# main.py ํŒŒ์ผ์„ ๊ธฐ์ค€์œผ๋กœ, ์„ ์–ธ๋œ ํ•จ์ˆ˜์™€ ๋ณ€์ˆ˜์˜ ๊ฒฝ๋กœ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

a.a_funtion
folder.b.b_funtion
folder.b.PIE
folder.b.HELLO
folder.c.c_funtion1
folder.c.c_funtion2

# ์—ฌ๊ธฐ์„œ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ from๊ณผ import๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

from a import a_funtion
from a import *
import a

from folder import b
from folder.b import *

from folder.c import c_funtion1, c_funtion2

 

 

๊ฐ’ ๋น„๊ตํ•˜๊ธฐ

'''== : ๊ฐ’์ด ์ผ์น˜ํ•˜๋Š”์ง€ ๋น„๊ต'''
"a" == "a" # True
"a" == "b" # False
1 == "1" # False, ๊ฐ’์€ ๋™์ผํ•˜์ง€๋งŒ ์ž๋ฃŒํ˜•์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ

'''!= : ๊ฐ’์ด ์ผ์น˜ํ•˜์ง€ ์•Š๋Š”์ง€ ๋น„๊ต'''
0 != 1 # True
0 != 0 # False

'''>, < : ๊ฐ’์ด ํฐ์ง€ ์ž‘์€์ง€ ๋น„๊ต'''
5 > 2 # True
1 < 0 # False
1 > 1 # False

'''>=, <= : ๊ฐ’์ด ํฌ๊ฑฐ๋‚˜ ๊ฐ™์€์ง€, ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€์ง€ ๋น„๊ต'''
1 >= 1 # True

'''in : ํŠน์ • ๊ฐ’์ด list / tuple / set์— ํฌํ•จ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธ'''
4 in [1, 2, 3] # False
1 in (1, 2, 3) # True

# ๋ชจ๋“  ๋น„๊ต ์—ฐ์‚ฐ์ž์˜ ๊ฒฐ๊ณผ๋Š” print()๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
print(1 == 1) # True

 

 

์กฐ๊ฑด๋ฌธ

ํŠน์ • ๊ฐ’์ด True ํ˜น์€ False์ผ ๊ฒฝ์šฐ ์‹คํ–‰๋  ๋กœ์ง์„ ์ •์˜ํ•œ๋‹ค.

if condition: # ์กฐ๊ฑด์ด True์ผ ๊ฒฝ์šฐ
    # some code

# not ํ‚ค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์กฐ๊ฑด์ด False์ผ ๋•Œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
elif not condition: # ์กฐ๊ฑด์ด False์ผ ๊ฒฝ์šฐ
    # some code

else: # ์œ„ ์กฐ๊ฑด๋“ค ์ค‘ ๋งŒ์กฑํ•˜๋Š”๊ฒŒ ์—†์„ ๊ฒฝ์šฐ
    # some code

and, or ์„ ์‚ฌ์šฉํ•ด 2๊ฐœ ์ด์ƒ์˜ ์กฐ๊ฑด์„ ๋ณตํ•ฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค

๋น„์–ด์žˆ๋Š” string, list ๋“ฑ์€ ๋ถ„๊ธฐ๋ฌธ์—์„œ False๋กœ ํŒ๋‹จํ•œ๋‹ค

ํŠน์ •๊ฐ’์ด True์ธ์ง€ False์ธ์ง€๋Š” bool()ํ•จ์ˆ˜๋ฅผ ํ†ตํ•ด ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.

print(bool(""))
print(bool(0))
print(bool([]))

print(bool("sample"))
print(bool([1, 2]))
print(bool(1))
print(bool(-1)) # 0์ด ์•„๋‹Œ ์ˆซ์ž๋Š” True๋กœ ํŒ๋‹จ

# sample result
"""
False
False
False

True
True
True
True
"""
728x90

๋Œ“๊ธ€