2021. 2. 26. 23:29ใPython
ํ์ด์ฌ์ด ๊ทธ๋ ๊ฒ ํธํ๋ค๊ณ , ๋ง์ด๋ค ์ด๋ค๊ณ ํด์ ๊ฒฐ๊ตญ ๋ค์ ๊ณต๋ถํ๊ฒ ๋์๋ค. ์๋๋ ์งง๊ฒ ์ ๊ณต์ผ๋ก ๋ฐฐ์ ์ง๋ง, ๊ทธ๋๋ ์ฝ๋ฉ์ ๊ด์ฌ๋ ์์๊ณ ํ์ด์ฌ์ ์์คํจ์ ๋ํด ๋ชฐ๋๋ค.. ๊ทธ๋์ ๋ ํํ๋ฉฐ ๋ธ๋ก๊ทธ์ ๊ธฐ๋กํด๋ณด๊ณ ์ ํ๋ค. ์๋ง C๋ Swift์์ ๋น๊ต๊ฐ ์ฃผ๊ฐ ๋์ง ์์๊น ์ถ๋ค. ํนํ C
1. ์ซ์ํ
1) ์ฐ์ฐ์ ์ข ๋ฅ
๋ด๊ฐ ๋๋ผ๊ธฐ์ ๊ฐ์ฅ ํน์ดํ ์ ์ ํ์ด์ฌ์ ์ฐ์ฐ์ ๋ถํธ์๋ค.
+ | ๋ง์ |
- | ๋บ์ |
/ | ๋๋์ |
* | ๊ณฑ์ |
% | ๋๋จธ์ง |
** | ๊ฑฐ๋ญ์ ๊ณฑ |
๊ฑฐ๋ญ์ ๊ณฑ์ด ์๋ค๋?! ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฑธ ์ด์ ์์ผ ์์๋ค๋..? C์์๋ ๊ฑฐ๋ญ์ ๊ณฑ์ ์ฐ๊ธฐ ์ํด math.h ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํฌํจ์์ผ์ฃผ๊ณ pow(double,double) ๊ฐ์ ํจ์๋ฅผ ์จ์ผํ๋๋ฐ.... ์ด๋ ๊ฒ ๊ฐ๋จํ๊ฒ ์์๋ค๋..
2) ๋๋์ ์ ๊ฒฐ๊ณผ๋ ๋ฌด์กฐ๊ฑด float
6 / 3 ์ด๋ผ๋ ๊ฒฐ๊ณผ๋ 2.0์ผ๋ก ์ถ๋ ฅ๋๋ค. ์ด ๋ํ ํ์ด์ฌ์ ๋ ํนํ ๋ฐฉ์ ๊ฐ๋ค.
2. ๋ฌธ์์ด
1) ๋ง์ ์ผ๋ก ๋ฌธ์์ด์ ํฉ์น ์ ์๋ค
print("Hello" + "World!")
-> ๊ฒฐ๊ณผ๋ Hello World!
2) ๊ณฑ์ ์ฐ์ฐ์๋ก ๋ฐ๋ณต ์ถ๋ ฅ์ด ๊ฐ๋ฅํ๋ค
sentence = "Hello!\n"
print(sentence * 2)
-> ๊ฒฐ๊ณผ
Hello!
Hello!
3. ํ ๋ณํ
1) stringํ์ผ๋ก ๋ณํํ ์ ์๋ค : str()
ํ ๋ณํ ๋ถ๋ถ์ C์์ ์๋ ๋ถ๋ถ๋ง ์์ฑํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก C์์๋ ํ ๋ณํ์ด ๊ฐ๋ฅํ๋๊น!
print("์ ๋์ด๋ " + str(7) + "์ด์
๋๋ค.")
์ ์ 7์ด ๋ฌธ์์ด 7๋ก ๋ณํ๋๋ค.
4. typeํจ์
์๋ฃํ์ ํ์ธํ ๋ ์ฐ๋ฉด ํธ๋ฆฌํ typeํจ์๋ผ๋ ๊ฒ์ด ์กด์ฌํ๋ค.
์ด์ฉ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ๋ค!
print(type("True"))
print(type(True))
๊ฒฐ๊ณผ
<class 'str'>
<class 'bool'>
5. Floor Division( // )
ํ์ด์ฌ์๋ ์ฐธ ํน์ดํ ๊ธฐ๋ฅ์ด ๋ง์ ๊ฒ ๊ฐ๋ค.
Floor Divison์ ์ฌ๋์ฌ ๋ ๊ฐ // ๋ก ์ฌ์ฉํ ์ ์๋๋ฐ, ๋๋์ ์ฐ์ฐ ํ ๊ฒฐ๊ณผ๊ฐ์ ๋ฐ๋ด๋ฆผํด์ค๋ค.
num = 7 // 2
print(num)
๊ฒฐ๊ณผ
3
6. ๋ฐ์ฌ๋ฆผ(round)
print(round(1.421, 1)) # 1.421์ ์์์ 1์งธ ์๋ฆฌ๋ก ๋ฐ์ฌ๋ฆผ
print(round(2.7862, 2)) # 2.7562๋ฅผ ์์์ 2์งธ ์๋ฆฌ๋ก ๋ฐ์ฌ๋ฆผ
print(round(3.141592, 4)) # 3.141592๋ฅผ ์์์ 4์งธ ์๋ฆฌ๋ก ๋ฐ์ฌ๋ฆผ
print(round(4.34)) # 4.34๋ฅผ ์์์ 0๋ฒ์งธ ์๋ฆฌ๋ก ๋ฐ์ฌ๋ฆผ
//์ด ๋ถ๋ถ์ ๊ณต๋ถ์ ๊ต์ฅํ ๋์๋๊ณ ์๋ ์ฝ๋์ ์ฝ๋๋ฅผ ์ฐธ๊ณ ํ๋ค.
๊ฒฐ๊ณผ
1.4
2.79
3.1416
4
7. ํจ์
ํ์ด์ฌ์์๋ ํจ์ ์ ์๋ ์ข ๋ ๋จ์ํ ๋๋์ด๋ค.
def helloWorld(name):
print("Hello, World! %s!" % (name))
helloWorld("Github")
Hello World! Github!
์ด๋ def ~ ์ด ๋ถ๋ถ์ ํจ์์ ํค๋(header), ํจ์์ ๋ด์ฉ์ ๋ฐ๋(body)๋ผ๊ณ ํ๋ค.
๋ํ name๊ณผ ๊ฐ์ด ํจ์๊ฐ ์ ๋ ฅ ๋ฐ๋ ๊ฐ์ ํ๋ผ๋ฏธํฐ(parameter)๋ผ๊ณ ํ๋ค.
ํ์ด์ฌ์์๋ ๋ค์ฌ์ฐ๊ธฐ๊ฐ ๊ต์ฅํ ์ค์ํ๋ค. { }์ ๊ฐ์ ๊ดํธ๋ฅผ ์ฐ์ง ์๊ธฐ ๋๋ฌธ์ ๋ค์ฌ์ฐ๊ธฐ๋ก ํจ์์ ๋์ ๊ตฌ๋ถํ๊ธฐ ๋๋ฌธ์ด๋ค.
8. Optional Parameters
def myself(name, age, nationality = "ํ๊ตญ"):
print("๋ด ์ด๋ฆ์ %s" % name)
print("๋์ด๋ %d์ด" % age)
print("๊ตญ์ ์ %s" % nationality)
myself("์ฝ๋์", 1) # ๊ธฐ๋ณธ๊ฐ์ด ์ค์ ๋ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๊พธ์ง ์์ ๋
myself("์ฝ๋์", 1, "๋ฏธ๊ตญ") # ๊ธฐ๋ณธ๊ฐ์ด ์ค์ ๋ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ๊พธ์์ ๋
** Optional Parameter๋ ์ค์ง! >>๋งจ ๋ง์ง๋ง<<์ ์ ์ํด์ ์ธ ์ ์๋ค. ๊ทธ ์ธ๋ ์๋ฌ๊ฐ ๋ฐ์ํจ
** ํ์ง๋ง ์ฌ๋ฌ๊ฐ ์ฐ๋ ๊ฒ์ ๊ฐ๋ฅํจ! ์ฌ๋ฌ๊ฐ๋ฅผ ๋งจ ๋ง์ง๋ง์ ๋ชฐ์์ ์ฌ์ฉ
9. Global ๋ณ์
ํจ์ ์์์ ์ ์๋ ๋ณ์๋ ํจ์ ๋ฐ์์ ์ฌ์ฉ ๋ชปํ๋ ๊ฒ ์ ์์ด๋ค. ๊ทธ๋ฌ๋ ํ์ด์ฌ์์๋ global์ด๋ผ๋ ์ ์ธ์ ํตํด ํจ์ ๋ฐ์ ์ ์ธ๋์ด ์๋ ๋ณ์๋ผ๋ ๋ณ์ ๋ช ์ด ๊ฐ์ผ๋ฉด ๊ทธ ๋ณ์์ ๊ฐ์ ๊ฐ์ ธ์ ์ ์ฉํ๋ค. ์๋ฅผ ๋ค๋ฉด,
def add():
global x
x += 1
x = 1
add()
print(x)
2
add()๋ก ํจ์๋ฅผ ํธ์ถํ๋ฉด ์์์ ์ ์๋ x ๊ฐ 1์ ๋ฐ์์์(๊ฐ์ ๋ณ์๋ช ์ธ๋ฐ global์ด๊ธฐ ๋๋ฌธ์) += 1 ์ฐ์ฐ์ ์คํํ๋ค.
๊ฒฐ๊ตญ, x ๊ฐ์ 2๊ฐ ๋๋ค. ๋ง์ฝ ํจ์ ์์ ๊ฐ์ด global์ด ์๋์๋ค๋ฉด ๊ฒฐ๊ณผ ๊ฐ์ 1์ด์์ ๊ฒ์ด๋ค.
10. ์์ in Python
const๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ ์์๋ฅผ ๋ง๋ค ์ ์๋ค.(๋ค๋ฅธ ์ธ์ด์์. ์๋ฅผ ๋ค๋ฉด C)
ํ์ง๋ง Python์ ๋ฑํ ๊ทธ๋ฐ ์ ํด์ง ๊ฒ์ด ์๋ค. ๊ทธ๋ฅ ๊ท์น์ผ๋ก, ์์์ผ๋๋ ๋๋ฌธ์๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ ์ ๋๊ฐ ์๋ค.
PI = 3.14
๊ทธ๋ฌ๋๊น ์ฐ๋ฆฌ๊ฐ ๊ตณ์ด PI ๊ฐ์ ๋ณ๊ฒฝํ๋ค๋ฉด ์ค๋ฅ๊ฐ ๋๋ค๊ฑฐ๋ ํ์ง๋ ์์ง๋ง, ํ์ด์ฌ ๋ด์ ๊ท์น์ด๋ ์์๋ก ์ทจ๊ธํ๋ฉฐ ์งํค์๋ ์ ๋๊ฐ ๋๊ฒ ๋ค.
11. if / elif / else
elif == else if
12. ๋ชจ๋(Module)
๋ชจ๋(module)์ด๋ ๋ณ์, ํจ์, ํด๋์ค ๋ฑ์ ๋ชจ์ ๋์ ํ์ผ. ์ฆ, header ํ์ผ๊ณผ ๋น์ทํ ๋๋์ด์ง๋ง ์ ํํด์ ๋ถ๋ฌ์ฌ ์ ์๋ค๋ ์ ์์ ์ข๋ค.
์ฌ์ฉ ์์
//calculate.py
//๋ชจ๋
def sum(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x,y):
return x * y
def divide(x, y):
return x / y
//test.py
from calculate import sum
print(sum(1,2))
-> test.py์์ calculate.py์ ์ ์๋์ด ์๋ sum์ด๋ผ๋ ํจ์๋ฅผ import ํด ์ฌ ์ ์๋ค.
** ์ฌ๋ฌ ๊ฐ ๊ฐ์ ธ ์ฌ ์ ์์
** ํ ๋ฒ์ ๋ค ๊ฐ์ ธ์ฌ ์๋ ์์( from calculate import * ) : ํ์ง๋ง ๋น์ถ!
1) randit
๋์(์ ์) ๋ฐ์์ ์ฌ์ฉํ๋ ํ์ด์ฌ ์ ์ฉ ํจ์. random์ด๋ผ๋ ๋ชจ๋์ ์ด๋ฏธ ์ ์๋์ด ์์ด์ ๊ฐ์ ธ์์ ์ฐ๊ธฐ๋ง ํ๋ฉด ๋จ.
from random import randit
//randit(a,b)๋ก ์ฌ์ฉ. a์ด์, b์ดํ ๋๋คํ ๊ฐ์ ๋ฆฌํดํด์ค๋ค.
randomNum = randit(1,10)
print(randomNum)
2) uniform
๋์(์์) ๋ฐ์์ ์ฌ์ฉ. ๋์ผํ๊ฒ random์ ์ ์๋์ด ์์
13. input ํจ์
name = input("์ด๋ฆ์ ์
๋ ฅํ์ธ์: ")
print("Hello " + name)
** ์ด๋ ์ ๋ ฅํ๋ ๋ชจ๋ ๊ฐ์ String ํํ์. ์ฆ, ์ซ์๋ฅผ ์ ๋ ฅ๋ฐ์์ ์ฐ๊ณ ์ถ๋ค๋ฉด ํ๋ณํ์ ํด์ฃผ์ด์ผํจ
14. ๋ฆฌ์คํธ
๋๋ ๋ฆฌ์คํธ๋ฅผ ๋ฐฐ์ด๊ณผ ๋์ผํ๊ฒ ์ดํดํ๋ค. ๋ฐฐ์ด์ฒ๋ผ index ๊ฐ๋ ์ ์ฌ์ฉํ๊ณ , 0๋ฒ๋ถํฐ ์์ํ๋ค.
1) ์ฌ๋ผ์ด์ฑ
numbers = [1, 2, 3, 4, 5, 6]
# ์ฌ๋ผ์ด์ฑ์ ํตํด ์์ ์ถ๋ ฅํ๊ธฐ
print(numbers[0:4])
print(numbers[0:-3])
print(numbers[2:])
print(numbers[:3])
[1, 2, 3, 4]
[1, 2, 3]
[3, 4, 5, 6]
[1, 2, 3]
2) ํจ์ ์ข ๋ฅ (์ด ๋ถ๋ถ์ Swift์ ์ ์ฌํ๋ค๊ณ ๋๊ผ์)
- len : ์์ count
- insert & append : insert๋ ์ ํํ ์ด๋ค ์๋ฆฌ์ ๋ฌด์์ ๋ฃ๋์ง ๋ช ๋ น๊ฐ๋ฅ. append๋ ๋ฆฌ์คํธ์ ๊ฐ์ฅ ๋ง์ง๋ง์ ์ฝ์ .
- del
# ์ธ๋ฑ์ค 3์ ์๋ ๊ฐ ์ญ์
del numbers[3]
# ์ธ๋ฑ์ค 4๋ถํฐ ๋ง์ง๋ง ๊ฐ๊น์ง ์ญ์
del numbers[4:]
- sorted : ๋ฆฌ์คํธ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ
numbers = [8, 6, 2, 4, 5, 7, 1, 3]
numbers = sorted(numbers)
print(numbers)
++ .sort() ๋ ์ ์ฌ ๊ธฐ๋ฅ.
numbers = [5, 3, 7, 1]
numbers.sort()
print(numbers)
- + : ๋ฆฌ์คํธ ์ฐ๊ฒฐ ๊ฐ๋ฅ
alphabet1 = ["a", "b", "c"]
alphabet2 = ["d", "e", "f"]
alphabet = alphabet1 + alphabet2
3) in ์ฌ์ฉ์ผ๋ก ๋ฆฌ์คํธ ๊ฐ ์ฒดํฌํ๊ธฐ
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 in primes)
print(12 in primes)
True
False
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23]
print(7 not in primes)
print(12 not in primes)
False
True
4) nested list == 2์ฐจ์ ๋ฐฐ์ด
5) .reverse() : ๋ฐฐ์ด ๋ค์ง์ด์ค
numbers = [5, 3, 7, 1]
numbers.reverse()
print(numbers)
6) .index(์ฐพ๊ณ ์ถ์ ๊ฐ) : ์ฐพ๊ณ ์ถ์ ๊ฐ์ ์ธ๋ฑ์ค ๋ฆฌํดํด์ค
members = ["์ํ", "์ค์", "ํํธ", "ํ๋ฆฐ"]
print(members.index("์ค์"))
print(members.index("ํํธ"))
1
2
7) .remove(์ญ์ ํ๊ณ ์ถ์ ๊ฐ)
fruits = ["๋ธ๊ธฐ", "๋น๊ทผ", "ํ์ธ์ ํ", "์๋ฐ", "์ฐธ์ธ", "๋ฉ๋ก "]
fruits.remove("ํ์ธ์ ํ")
print(fruits)
'Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 1946 ํ์ด์ฌ (0) | 2021.05.04 |
---|---|
๋ฐฑ์ค 1476 ํ์ด์ฌ (0) | 2021.04.07 |
๋ฐฑ์ค 1021๋ฒ ํ์ด์ฌ (0) | 2021.04.02 |
๋ฐฑ์ค 1550๋ฒ ํ์ด์ฌ (0) | 2021.03.27 |
๋ฐฑ์ค 1927๋ฒ๊ณผ ํ์ด์ฌ ํ (0) | 2021.03.26 |