PYTHON
PYTHON ํน์ง
์์ฐ์ฑ์ด ๋ฐ์ด๋๋ค. (์ฝ๋๊ฐ ์งง๋ค)
์ด๋ณด์์ฉ ์ธ์ด – ์ธํฐํ๋ฆฌํฐ(๋ํํ) ์ธ์ด
๋ฌธ๋ฒ์ด ์ฌ์์ ์ฝ๋๋ฅผ ๋ณด๋ฉด ์ง๊ด์ ์ผ๋ก ์ ์ ์๋ ๋ถ๋ถ์ด ๋ง๋ค.
ํ์ด์ฌ์ ๋ค์ํ ํ๋ซํผ์์ ์ฌ์ฉ
๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ํ๋ถ
์ ๋๋ฉ์ด์ ์ด๋ ๊ทธ๋ํฝ์ ์ฝ๊ฒ ์ฌ์ฉ
if "์ฌ๊ณผ" in ["๋ธ๊ธฐ", "๋ฐ๋๋", "ํฌ๋", "์ฌ๊ณผ"]: print("์ฌ๊ณผ๊ฐ ์์ต๋๋ค")
* T์ด๋ฉด print์ดํ๋ฅผ ์ถ๋ ฅ, F๋ ๋ฏธ์ถ๋ ฅ
๊ทธ ์ธ ๋ค๋ฅธ ํน์ง๋ค
์ธํฐํ๋ฆฌํฐ ์ธ์ด - ์์ฑํ ๋ค์ ๋ฐ๋ก ํ ์คํธํด๋ณผ ์ ์๋ค.
๋์ ์ธ ๋ฐ์ดํฐ ํ์ ๊ฒฐ์ - ๋ณ์์ ํ์ ์ ์ค์ ํด์ฃผ์ง ์์๋ ๋๋ค.
๋ฉ๋ชจ๋ฆฌ ์๋ ๊ด๋ฆฌ - ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์๋์ผ๋ก ํ ๋น, ํฌ๊ธฐ ์กฐ์ ๊น์ง
๊ฐ๊ฒฐํ ๋ฌธ๋ฒ - ๋ค์ฌ์ฐ๊ธฐ๊ฐ ์ค์ํ๋ค.
๋ฌด๋ฃ ์ธ์ด
PYTHON ๋ช ๋ น๋ฌธ
ํ์ด์ฌ ํ๋ก๊ทธ๋จ์ ์ฌ๋ฌ ์ค์ ๋ช ๋ น์ด๋ก ์ด๋ฃจ์ด์ง๋ค.
ํ ์ค์ ๋ช ๋ น์ด๋ฅผ ๋ฌธ์ฅ (statement) ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๋ฌธ์ฅ๋ค์ ํ์ด์ฌ ์ธํฐํ๋ฆฌํฐ์ ์ํ์ฌ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ค.
Anaconda ๋ค์ด๋ก๋ & ์ค์น
Anaconda ๋ค์ด๋ก๋ https://www.anaconda.com/distribution/
Anaconda | Individual Edition
Anaconda's open-source Individual Edition is the easiest way to perform Python/R data science and machine learning on a single machine.
www.anaconda.com
- PATH ํ๊ฒฝ ๋ณ์์ ์๋์ฝ๋ค ์ถ๊ฐ ์ฌ๋ถ ์ ํ (๋น ์ ํ ๊ถ์ฅ)
- ์๋์ฝ๋ค๋ฅผ ๊ธฐ๋ณธ ํ์ด์ฌ์ผ๋ก ๋ฑ๋ก ๊ฐ๋ฐ๋๊ตฌ์์ ์๋์ฝ๋ค Python3.8 ์ธ์
Path ์ค์
๋ดPC > ์์ฑ > ์ค์ ๋ณ๊ฒฝ > ๊ณ ๊ธ > ํ๊ฒฝ ๋ณ์ > ์์คํ ๋ณ์ ํธ์ง > ํ๊ฒฝ๋ณ์ ํธ์ง์์ ์๋์ฝ๋ค ์ค์น ๋งํฌ ์ถ๊ฐ
Spyder ์คํ
Windows ์์ ๋จ์ถ > 'Anaconda3 (64-bit)' > 'Spyder' ์์ด์ฝ ํด๋ฆญ
Spyder ๊ธฐ๋ฅ
code ์คํ : F5(์ ์ฒด ํ๋ก๊ทธ๋จ ์คํ), F9(์ค ๋จ์ or ๋ธ๋ก ๋จ์ ์คํ)
packages ๋ง๋ค๊ธฐ
Python์ Package๋ ๋์ผํ ๋ชจ๋(module)์ ๋ฌถ์ด์ฃผ๋ ์ญํ ์ ํ๋ค.
*.pyํ์์ผ๋ก ๋ง๋ค์ด์ง๋ค.
New > Package...
๋ณ์์ ์๊ฐ
๋ณ์(variable)๋ ๊ฐ์ ์ ์ฅํ๋ ๊ณต๊ฐ ๊ฐ์ฅ ์ต๊ทผ ๊ฐ์ผ๋ก ๋ณ๊ฒฝ
๋ณ์์ ๋ฉ๋ชจ๋ฆฌ
๋ณ์๋ ๋ฉ๋ชจ๋ฆฌ(memory)์ ๋ง๋ค์ด์ง๋ค.
๋ณ์ ์์ฑ
ํ์) ๋ณ์์ด๋ฆ = ๊ฐ
๋ณ์์ ์ฌ์ฉ
์์ฑ๋ ๋ณ์์๋ ์ผ๋ง๋ ์ง ๋ค๋ฅธ ๊ฐ์ ์ ์ฅํ ์ ์๋ค.
๋ณ์์๋ ๋ค๋ฅธ ๋ณ์์ ๊ฐ๋ ์ ์ฅํ ์ ์๋ค.
ํ์ด์ฌ์ ๋ณ์์๋ ์ ์๋ฟ๋ง ์๋๋ผ ๋ฌธ์์ด๋ ์ ์ฅํ๋ค.
ํ์ด์ฌ์์ ๋ณ์๋ ์ด๋ค ๋ฐ์ดํฐ๋ ์ง ์ ์ฅํ ์ ์๋ค.
์ค์ต
1. ๋ณ์์ ์๋ฃํ
var1 = "Hello python"
var2 = 'Hello python'
2. ๋ณ์ ์ถ๋ ฅ - console ์ฐฝ
print(var1)
print(var2)
3. typeํจ์ : ๊ฐ์ฒด ์ถ์ฒ ํ์ธ
print(type(var1)) #<class 'str'> : ๋ฌธ์์ด
print(type(var2))
var1 = 100 #๋ณ์ ์์
print(type(var1)) #<class 'int'> : ์ซ์(์ ์)ํ
var3 = 123.3536
print(type(var3)) #<class 'float'> : ์ซ์(์ค์)ํ
var4 = True
print(type(var4)) #<class 'bool'> : ๋
ผ๋ฆฌํ
PYTHON ๋ณ์ ์ ์ฅ ๋ฐฉ์
์๋ฃ(Data)๊ฐ ์ ์ฅ๋ ์ฃผ์ ์ ์ฅ
์ด ์ฃผ์๋ฅผ ํตํด์ ๋ฐ์ดํฐ๋ฅผ ์ฐธ์กฐ -> ์ฐธ์กฐ๋ณ์
ex. X๋ณ์์ ๊ฐ 3.14159๊ฐ ์ ์ฅ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ ์ ์ฅ
์ค์ต
์ฐธ์กฐ๋ณ์ : ๊ฐ์ฒด๊ฐ ์ ์ฅ๋ ๋ฉ๋ชจ๋ฆฌ์ ์ฃผ์๋ฅผ ์ ์ฅ
x = 150 #x = 150์ด๋ผ๋ ๊ฐ์ฒด์ ์ฃผ์๋ฅผ ์ ์ฅ
x2 = x #x2๋ 150 ์ฃผ์๋ฅผ ๊ฐ๊ฒ ๋จ
x3 = 150 #๊ฐ์ฒด์์ฑ(x) -> ์ฃผ์ ๋ฐํ
WHY? ์ค๋ณต์ผ๋ก ์ ์ฅํ๋ฉด ํจ์จ์ด ๋จ์ด์ง๊ธฐ ๋๋ฌธ์
์ฃผ์ ์ถ๋ ฅ
print(id(x)) #x์ ์ฃผ์๋ 140705152842192
print(id(x2)) #๋์ผํ ์ฃผ์ 140705152842192
print(id(x3)) #๋์ผํ ์ฃผ์ 140705152842192
๋ด์ฉ ์ถ๋ ฅ
print(x) #150
print(x2) #150
print(x3) #150
์๋ณ์ ์์ฑ ๊ท์น
* ์๋ณ์ : ๋ณ์๋ช , ํจ์๋ช , ํด๋์ค๋ช
์๋ฌธ์์ ๋๋ฌธ์๋ ์๋ก ๋ค๋ฅด๊ฒ ์ทจ๊ธ๋๋ค.
์๋ฌธ์์ ์ซ์, ๋ฐ์ค(_)๋ก ์ด๋ฃจ์ด์ง๋ค.
์ด๋ฆ ์ค๊ฐ์ ๊ณต๋ฐฑ์ด ๋ค์ด๊ฐ๋ฉด ์ ๋๋ค.
๋จ์ด๋ฅผ ๊ตฌ๋ถํ๋ ค๋ฉด ๋ฐ์ค(_)์ ์ฌ์ฉํ๋ค.
ํค์๋(์์ฝ์ด) ์ฌ์ฉ๋ถ๊ฐ, ํ๊ธ ๋น๊ถ์ฅ
2๊ฐ ์ด์ ๋จ์ด ์กฐํฉ : ๋ํ์ฒด ๋ฐฉ์
<์๋ชป๋ ์>
123data
score$$
Data set
member.name
์ค์ต
1. ๋ณ์๋ช ์์ฑ ๊ท์น
_num10 = 10 #10
_Num10 = 20 #20. ๋/์๋ฌธ์๋ฅผ ๊ตฌ๋ณํ๋ฏ๋ก ๋ค๋ฅธ ๋ณ์์ด๋ค.
print(_num10 * 2)
print(_Num10 * 2)
2. ํค์๋ ํ์ธ
import keyword #๋ชจ๋ ์ํฌํธ
kword = keyword.kwlist #(๊ฐ์ฒด.๋ฉค๋ฒ) .klist๋ ๋ช
๋ น์ด ๋ชฉ๋ก์ ๊ฐ์ง๊ณ ์๋ค.
print(kword)
print('๋ช
๋ น์ด ๊ฐ์=', len(kword)) #๋ช
๋ น์ด ๊ฐ์= 35. len : ์์์ ๊ธธ์ด ํ์ธ
class = 'rkss' #error. ๋ช
๋ น์ด๋ฅผ ๋ณ์๋ช
์ผ๋ก ์ฌ์ฉํ ์ ์๋ค
3. ๋ํ์ฒด ํ๊ธฐ๋ฒ : ๋๋ฒ์งธ ๋จ์ด ์ฒซ๋จธ๋ฆฌ๋ฅผ ๋๋ฌธ์๋ก
korScore = 89
matScore = 75
engScore = 66
tot = korScore + matScore + engScore
print('tot=', tot) #tot= 230
์ฐ์ฐ์์ ํผ์ฐ์ฐ์
์, ์์(expression)=ํผ์ฐ์ฐ์๋ค๊ณผ ์ฐ์ฐ์์ ์กฐํฉ
์ฐ์ฐ์(operator)๋ ์ฐ์ฐ์ ๋ํ๋ด๋ ๊ธฐํธ
ํผ์ฐ์ฐ์(operand)๋ ์ฐ์ฐ์ ๋์์ด ๋๋ ๊ฒ
์ฐ์ฐ์์ ์ข ๋ฅ
ํ ๋น ์ฐ์ฐ์(=) : ๋ณ์์ ๊ฐ ํ ๋น/๋์
์ผ๋ฐ ์ฐ์ฐ์ : ์ฐ์ /๊ด๊ณ/๋
ผ๋ฆฌ ์ฐ์ฐ์
[์ค์ต]
1. ํ ๋น ์ฐ์ฐ์ =
#i = 10
#tot = 10
i = tot = 10 #๋ณ์ ์ด๊ธฐํ
print(i, tot) #10 10
i += 1 #i = i + 1์ ๋์ผํ ๊ฐ ์ถ๋ ฅ. ์นด์ดํฐ ๋ณ์
tot += i #tot = tot + i. ๋์ ๋ณ์
print(i, tot) #11 21
์๋ก ๋ค๋ฅธ ๊ฐ ํ ๋น
v1, v2 = 100, 200
print(v1, v2) #100, 200
๋ณ์ ๊ฐ ๊ต์ฒด
v2, v1 = v1, v2
print(v1, v2) #200 100
ํจํน ํ ๋น (*)
lst = [1,2,3,4,5] #vector
print(lst) #[1, 2, 3, 4, 5]
v1, *v2 = lst #1์ v1์ผ๋ก, 2~5๋ v2๋ก ํ ๋น
print(v1, v2) #1 [2, 3, 4, 5]
*v1, v2 = lst
print(v1, v2) #[1, 2, 3, 4] 5
2. ์ผ๋ฐ์ฐ์ฐ์ : ์ฐ์ /๊ด๊ณ/๋
ผ๋ฆฌ ์ฐ์ฐ์
num1 = 100
num2 = 6
1) ์ฐ์ ์ฐ์ฐ์
add = num1 + num2
print(add) #106
sub = num1 - num2
print(sub) #94
div = num1 / num2
print(div) #16.6666...
div2 = num1 // num2 #// : ์์์ ์ดํ๋ฅผ ๋ฒ๋ฆฌ๊ณ ์ ์ ๋จ์ ๊ฐ ์ถ๋ ฅ
print(div2) #16
div3 = num1 % num2 #% : ๋๋จธ์ง ๊ฐ ๋ฐํ
print(div3) #4
mul = num1 * num2
print(mul) #600
square = num1 ** 2 #** : ์ ๊ณฑ
print(square) #10000
2) ๊ด๊ณ ์ฐ์ฐ์
(1) ๋๋ฑ๋น๊ต
result = num1 == num2
print(result) #False : ๊ฐ์ง ์๋ค
result = num1 != num2
print(result) #True : ๊ฐ๋ค
(2) ๋์๋น๊ต
result = num1 > num2
result = num1 >= num2
print(result) #True
result = num1 < num2
result = num1 <= num2
print(result) #False
(3) ๋
ผ๋ฆฌ์ฐ์ฐ์ : AND, OR, NOT
result = num1 >= 50 and num2 <= 20
print(result) #True
result = num1 >= 500 or num2 <= 20
print(result) #True
result = not(num1 <= 60)
print(result) #True
'๋ฐ์ดํฐ๋ถ์๊ฐ ๊ณผ์ > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DAY36. Python ์ ๊ทํํ์ (0) | 2021.11.04 |
---|---|
DAY35. Python Basic ์๋ฃ๊ตฌ์กฐ (2)set, dict (0) | 2021.11.03 |
DAY34. Python Basic ์๋ฃ๊ตฌ์กฐ (1)list, tuple (0) | 2021.11.02 |
DAY33. Python Basic ์กฐ๊ฑด๋ฌธ, ๋ฐ๋ณต๋ฌธ (0) | 2021.11.01 |
DAY32. Python Basic ๋ฌธ์์ด, ์ด์ค์ผ์ดํ ๋ฌธ์ (0) | 2021.10.29 |