- git hub (ํด๋ผ์ฐ๋ ๊ฐ์๊ฑฐ)
- bash ( ์๋์ฐ์์ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ํด์ฃผ๋ ๋๊ตฌ/ ๊ฐํธ๋ฆฌํ๋ฉฐ git hub๋ฅผ ์ํด ์ฌ์ฉ )
- Gui : ์๋์ฐgui, ๋ฆฌ๋ ์ค <-> Tui : -> Cli : cmd, powershell, bash
- ์ธํฐํ์ด์ค= ๊ธฐ๊ณ์ ์ํตํ๊ธฐ ์ํ ๋๊ตฌ ์์๋ ์ ๋ถ ์ธํฐํ์ด์ค
-
ChatGPT
- Generative/Pre-trained/Transformer
- ์์ฑ๋ชจ๋ธ / ์ฌ์ ํ๋ จ / ํธ๋์คํฌ๋จธai๋ชจ๋ธ( ๋ฅ๋ฌ๋ ๋ชจ๋ธ, ์์ฐ์ด์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ)
- HTML=> ํ
- CSS => ๊พธ๋ฉฐ์ฃผ๋๊ฑฐ
- ์๋ฐ์คํฌ๋ฆฝํธ => ๋ก์ง
-
ํด๋ผ์ด์ธํธ ๋ง๋ค๊ธฐ ( ํ๋ก ํธ์๋)
- ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์ํธ์์ฉ
- API๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ ์์ฒญํ๋ ๊ท์น
- api๋ก ์์ฒญํ๋ฉด ์๋ต์ Json์ผ๋ก ๋ณด๋
-
Json์ ํค์ ๋ฐธ๋ฅ๋ก ๊ตฌ์ฑ๋
- key : value
- ๋ธ๊ธฐ : 5๊ฐ
- ์๋ฐ : 3๊ฐ
- ์์ : 8ํฉ
- ctrl + s : ์ ์ฅ
- ctrl + j : ํฐ๋ฏธ๋์ฐฝ
- ctrl + w : ๋ซ๊ธฐ
- ctrl + / : ์ฃผ์
- ๊ฐ๋ฐ์๋ก ์ฑ์ฅํ๊ธฐ
- ๋์ฒด์ด๋์๋ถํฐ ์์ํด์ ์ด๋๊น์ง ํด์ผํ ๊น?
- python๊ณผ java๋ฅผ ๋ฐฐ์ฐ๋ฉด ๊ฐ๋ฐ์๊ฐ ๋๋๊ฑธ๊น? ์ ์ผ ์ค์ํ๊ฑด ๊พธ์คํ ํ์ต์ ํ ์ ์๋ ์ฌ๋์ธ์ง๋ฅผ ๋ณด์ฌ์ค์ผ ํ๋ค.
- ํญ์ ๋๋ฌ๋ณด์ธ์
- ์ํฐ๋ฅผ ๋ ์ธ๋ฒ ๋๋ฌ๋ณด์ธ์
- ํญ์ ๋๋ฅด๋ฉด 2-1๋ฒ
- 4๋ฒ์ ์ ์ด๋ 3๋ฒ์ผ๋ก ํ์๋๋๋ค.
- 3๋ฒ์ ์ ์ด๋ 4๋ฒ์ผ๋ก ํ์๋๊ณ ์
- -๋ +๋ *์ด๋ ์๊ด์์ต๋๋ค.
- ๋ค์ ๋์๊ฐ๊ธฐ ํค๋ shift + tab
- ์ํฐ๋ฅผ ์ฌ๋ฌ๋ฒ ๋๋ฌ๋ ๋ค์ ๋์๊ฐ๋ค.
- ์ฌ๊ณผ
- ekdrmsใด
- didvk
- ๋ผ๋ฉด
- tnrwn
- [ ]
a = input()
a = str()
print(a)
# include <stadio.h>
int main()
(
print ("hello world\n")
return 0;
)
[์ธํผ] (https://edu.ssafy.com/edu/main/index.do)
๊ตต๊ฒ ํ ๋๋ ์ธ๋๋ฐ๋ ๋ณํ ๋๊ฐ
๊ตต์๊ธ์จ
๊ตต์๊ธ์จ
๊ธ ์ค๊ฐ์ ์ด๋ ๊ฒ ๊ฐ์กฐ ํฉ๋๋ค
๊ธฐ์ธ๊ธฐ๋ ์ธ๋๋ฐ๋ ๋ณํ ํ๊ฐ
์๋ ์๋
์ด๋ ๊ฒ ๊ธฐ์ธ์ด์ง
๊ธ ์ค๊ฐ์ ์ด๋ ๊ฒ ๊ธฐ์ธ์ด์ง
์ฅ ๋ณ๋ก ํ๋ฌ๋๋ฐ ์ธ๋๋ฐ๋ ๋๋ค์
๊ตต๊ฒ ๊ธฐ์ธ์ด๊ธฐ
~~ ์ทจ์์ ~~
์ด๋ ๊ฒํ๋๊ฑฐ์ง์ฉ
์คํ์ด์ค๋ฐ ์ธ๋๋ฐ ์ธ๋๋ฐ ์ธ๋๋ฐ
- GUI๊ฐ ์ฌ์ฉํ๊ธฐ๋ ์ฝ์ง๋ง, ๋จ๊ณ๊ฐ ๋ง๊ณ ์ฑ๋ฅ์ ์๋์ ์ผ๋ก ๋ง์ด ์๋ชจํ๊ธฐ์ ์๋ง์ ์๋ฒ/๊ฐ๋ฐ ์์คํ ์ด CUI ๋ฅผ ํ์ฉํด ์กฐ์ํ๊ฒฝ์ ์ ๊ณตํ๋ค.
- => ๊ฐ๋ฐ์์ ๊ธฐ๋ณธ์์์ด๊ธฐ๋๋ฌธ์ CLI์ฌ์ฉ
- cd ./์ด๋ํ ํ์ผ์ด๋ฆ
- cd .. ๊ฒฝ๋ก ํ๋ ๋๊ฐ๊ธฐ
- ls //๊ทธ ํด๋์์ ๋ฆฌ์คํธ๋ค ๋ณด์ฌ์ฃผ๊ธฐ
- rm -r ์ญ์ ํ ํ์ผ์ด๋ฆ
- rm *์ ์ฒด์ญ์ ํ ํ์ผ๋ช
- clear //์ ์ฒด ์ง์ฐ๊ธฐ
- touch a.txt //ํด๋์ a.txtํ์ผ ๋ง๋ค๊ธฐ
- mkdir new_folder // new_folder๋ผ๋ ํด๋ ๋ง๋ค๊ธฐ
- tabํค // ์๋์์ฑ //์์ฃผ ์ด์ฉํ๊ธฐ
- ํ๋ก์ ํธ ํ์ ํ๊ธฐ์ ์ฉ์ดํ๊ธฐ์ ์ฌ์ฉ!!
- ์ฝ๋์ ๋ฒ์ ์ ๊ด๋ฆฌํ๊ณ ์ด์ ๋ฒ์ ๊ณผ์ ๋ณ๊ฒฝ์ฌํญ ๋น๊ต, ๊ฐ๋ฐ๋์ด์จ ๊ณผ์ ํ์ ์ฉ์ด
- ์ฝ๋์ ๋ณ๊ฒฝ์ด๋ ฅ ์ ๊ธฐ๋กํ๊ณ ํ์ ์ ์ํ ํ๊ฒ ํ๋ ๋๊ตฌ
- => ๋ถ์ฐ ๋ฒ์ ๊ด๋ฆฌ ์์คํ
- git : local repository ๋ก์ปฌ ์ ์ฅ์
- git hube : remote repository ์๊ฒฉ ์ ์ฅ์
- working directory => add
- staging area => commit
- repository
- git config --global user.name ์ฅ์ฌ์ฑ
- git config --global user.email lancer98@naver.com
- git config --global -l (์์ด L์)
- git init ๊น ๋ฃ๊ธฐ
- rm -rf git ๊น ์ญ์
- git init
- rm -rf .git
- echo > a.txt > b.txt > c.txt ์ดํ์ผ๋ค ๋ง ๊น
- echo c.txt>> .gitignore ์ด ํ์ผ๋ง ๊น ์ญ์
- rm .gitignore ๊น ์ญ์ ์ทจ์
- git add . ์ ๋
- git status ์ํ๋ณด๊ธฐ
- git reset ์ ๋ ์ทจ์
- git add .
- git commit -m 'first commit' ' '์ด๋ฆ์ผ๋ก ์ปค๋ฐํ๊ธฐ
- git log ๋ก๊ทธ ๋ณด๊ธฐ
- rm -rf .git
- ๊นํ๋ธ ๊ฐ์ ํ๊ธฐ
- branch๋ช master๋ก ์ค์ ํ Repositories๋ง๋ค๊ธฐ
- ํฐ๋ฏธ๋์์ ์ปค๋ฐํ ๋ก๊ทธ ํ์ธ์ด ๋๋ฉด git remote add origin https://github.com/jaesung08/First.git
- ๊นํ๋ธ์ฃผ์์ฐฝ์ ์ ๋
- git remote -v
- git push origin +master ํธ์ฌํ๋๋ฐ ๋ง์คํฐ๋ branch๋ช ์ผ๋ก
- git pull origin master =>์๊ฒฉ ์ ์ฅ์์ ๋ณ๊ฒฝ์ฌํญ๋ง ๋ฐ๊ธฐ
- git clone https://github.com/jaesung08/First.git => ์ ์ฅ์ ์ ์ฒด๋ฅผ ๋ณต์ ํ์ฌ ๋ค์ด๋ก๋
- ๊นํ๋ธ ์ฃผ์๋ ์ํ๋ ์๊ฒฉ์ ์ฅ์ ์ฃผ์๋ฅผ ์ฌ์ฉ
- origin์๋ ์์ ์ด ์๊ฒฉ์ ์ฅ์์ ์ฌ๋ฆด ์ด๋ฆ์ผ๋ก ์์ฑ
- https://www.toptal.com/developers/gitignore/ ignoreใ ใ ์ผ ๋ง๋๋๊ณณ(?)
- ์น๊ตฌ์๊ฒ ์ฐ๋ฆฌ์ง์ผ๋ก ์ค๋๊ธธ์ ์ ์ด์ค๊ฒ- ํ๋ก๊ทธ๋จ ์์ฑ
- ์ ์ด์ค๊ธธ์ ์์๋๋ก ๋ฐ๋ผ๊ฐ๋๊ฒ - ํ๋ก๊ทธ๋จ ์คํ
- ~~์์ ์ฐํ์ , ๋ ๋ธ๋ก ์ง์ง ํ ์ขํ์ ๋ฑ์ผ๋ก ๊ตฌ์ฑ- ๋ช๊ฐ์ง ๊ธฐ์ด์ฐ์ฐ์ผ๋ก ๊ตฌ์ฑ๋
- ์ปดํจํฐ๋๋ ๋ค์ํ ์ฐ์ฐ ์งํฉ์ ๊ฐ์ง ์ ์์ => ๊ธฐ์กด ์ฐ์ฐ์ ์ฌ์ฉํด ๋ ๋ง์ ์ฐ์ฐ์ ๋ง๋ค๊ณ ์ฐจ๊ณก์ฐจ๊ณก ์์ ์๋ก์ด ์ฐ์ฐ์ ๋ง๋ค์ด๋
- ์์ฐ์ฐ์ ์ ์ํ๊ณ ์กฐํฉํด์ ์ ์ฉํ ์์ ์ ์ํํ๋๊ฒ.
- ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ์ํ ๋๊ตฌ
- ๊ฐ๊ฒฐํ๊ณ ์ฝ๊ธฐ์ฌ์
- ๋ค์ํ ์์ฉ๋ถ์ผ
-
- ๋ฐ์ดํฐ ๋ถ์, ์ธ๊ณต์ง๋ฅ, ์น๊ฐ๋ฐ, ์๋ํ ๋ฑ
- ํ์ด์ฌ ์ปค๋ฎค๋ํฐ์ ์ง์
-
- ์ธ๊ณ์ ์ธ ๊ท๋ชจ์ ์ฌ์ฉ์๋ก ์ํ๊ณ๊ฐ ์ ์ง
- ์ปดํจํฐ๋ ๊ธฐ๊ณ์ด(0๊ณผ 1)๋ง ์ฌ์ฉํ๋, ์ฌ๋์ ๊ธฐ๊ณ์ด ์์ฑ์ด ์ด๋ ค์. => ์ธํฐํ๋ฆฌํฐ๋ฅผ์ด์ฉํ์ฌ ๋ช ๋ น์ด๋ฅผ ๊ธฐ๊ณ์ด๋ก ๋ฐ๊ฟ.
-
- ํจ์ฌ ์ฌ์ฉํ๊ธฐ ์ฝ๊ณ , ์ด์์ฒด์ ๊ฐ ์ด์๋ ๊ฐ๋ฅ(ํ์ฅ์ฑ)
- shell์ ์ฌ์ฉํ์ฌ ๋ช ๋ น์ด ํ๋์ฉ ์ฌ์ฉ
- ํ์ฅ์๊ฐ .py์ธ ํ์ผ์ ์์ฑ๋ ํ์ด์ฌ ํ๋ก๊ทธ๋จ ์คํ
-
ํํ์ = ๊ฐ, ๋ณ์, ์ฐ์ฐ์ ๋ฑ์ ์กฐํฉํ์ฌ ๊ณ์ฐ๋๊ณ ๊ฒฐ๊ณผ๋ฅผ ๋์ถํ๋ ์ฝ๋ ๊ตฌ์กฐ
-
ํ๊ฐ(evaluate) = ํํ์์ด๋ ๋ฌธ์ฅ์ ์คํํ์ฌ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๊ณ์ฐํ๊ณ ๊ฐ์ ๊ฒฐ์ ํ๋ ๊ณผ์
-
=>ํํ์์ด๋ ๋ฌธ์ฅ์ ์์ฐจ์ ์ผ๋ก ํ๊ฐํ์ฌ ํ๋ก๊ทธ๋จ์ ๋์์ ๊ฒฐ์
-
๋ฌธ์ฅ(statement) = ์คํ๊ฐ๋ฅํ ๋์์ ๊ธฐ์ ํ๋ ์ฝ๋(์กฐ๊ฑด๋ฌธ, ๋ฐ๋ณต๋ฌธ, ํจ์์ ์ ๋ฑ)
-
๋ฌธ์ฅ์ด ์ฌ๋ฌ๊ฐ์ ํํ์์ ํฌํจํจ
-
ํ์ = ๊ฐ์ด ์ด๋ค์ข ๋ฅ์ ๋ฐ์ดํฐ์ธ์ง ์ด๋ป๊ฒ ํด์๋๊ณ ์ฒ๋ฆฌ ๋์ด์ผํ๋์ง ์ ์
-
=> ๊ฐ(ํผ์ฐ์ฐ์)๊ณผ ์ฐ์ฐ์ 2๊ฐ์ง๋ก ๋ถ๋ฅ
-
๋ฐ์ดํฐ ํ์
- Numeric Type = ์ ์(int), ์ค์(float)
- set type = set
- sequence type = list, tuple, range
- text sequence type = str(๋ฌธ์์ด)
- mapping type = dict
- ๊ธฐํ = none, boolean, functions
- ๋ฆฌ์คํธ, ํํ, ๋์ ๋๋ฆฌ ์ ์ฐจ์ด์ ์ ์์์์ผํจ
-
์ฐ์ ์ฐ์ฐ์(์ฐ์ ์์ ์)
- ** ์ง์(์ ๊ณฑ)
- (-) ์์๋ถํธ
- (*) ๊ณฑ์
- / ๋๋์
- // ๋ชซ
- % ๋๋จธ์ง
-
- ๋ง์
-
- ๋บผ์
- ๋ณ์(variable) = ๊ฐ์ ์ฐธ์กฐํ๋ ์ด๋ฆ
-
์๋ฌธ์ํ๋ฒณ,์ธ๋์ค์ฝ์ด( _ ), ์ซ์๋ก ๊ตฌ์ฑ
-
์ซ์๋ก ์์๋ถ๊ฐ
-
๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถ
-
ํ์ด์ฌ ๋ด๋ถ ์์ฝ์ด๋ ์ฌ์ฉ๋ถ๊ฐ
- false, None, True, and, as, assert, async, await, break, class, continue, def, del, elif, else, except, finally, for, from, global, if, import, in, is, lambda, nonlocal, not, or, pass, raise, return, try, while, with, yield, __ peg_parser__
-
๋ชจ๋ ๋ฉ๋ชจ๋ฆฌ์๋ ๊ณ ์ ์ฃผ์๊ฐ ์กด์ฌ
-
๊ฐ์ฒด(object) = ํ์ ์ ๊ฐ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์ ๋ด ๊ฐ
-
=> ๊ฐ์ด ๋ค์ด์๋ ์์
-
๋ณ์์ ์ฐธ์กฐํ๋ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ๊ฐ์ง๊ฒ ํ๊ณ ๊ณ ์ ๋ฉ๋ชจ๋ฆฌ์ฃผ์์๋ ๊ฐ์ฒด(๊ฐ)์ ์ ์ฅ
- ์ฝ๋์ ์ผ๊ด์ฑ๊ณผ ๊ฐ๋
์ฑ์ ํฅ์ํ๊ธฐ์ํ ๊ท์น๊ณผ ๊ถ์ฅ์ฌํญ๋ค์ ๋ชจ์
- ๋ณ์๋ช ์ ๋ฌด์์ ์ํ ๋ณ์์ธ์ง ์ง๊ด์ ์ธ ์ด๋ฆ์ ๊ฐ์ ธ์ผํ๋ค.
- ๊ณต๋ฐฑ4์นธ์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ธ๋ก ๋ค์ฌ์ฐ๊ธฐ(tab์ฌ์ฉ์ ์๋ํฐ๊ฐ ๋ณํํด์คฌ๊ธฐ๋๋ฌธ์ ์ฌ์ฉ๊ฐ๋ฅ)
- ํ์ค์ ๊ธธ์ด๋ 79์๋ก ์ ํ, ๊ธธ์ด์ง๋ฉด ์ค๋ฐ๊ฟ ์ฌ์ฉ
- ๋ฌธ์์ ๋ฐ์ค(_)์ ์ฌ์ฉํ์ฌ ํจ์,๋ณ์,์์ฑ์ ์ด๋ฆ ์์ฑ( ๋ฐ์ค ์ด๊ฒ์ snake_case ๋ผ ์นญํจ)
- ํจ์ ์ ์๋ ํด๋์ค ์ ์ ๋ฑ์ ๋ธ๋ก์ฌ์ด์๋ ๋น ์ค ์ถ๊ฐ( 2์ค์ ๊ถ์ฅ)
- pep8 ์ฌ์ดํธ์์ ํ์ด์ฌ ๊ฐ์ด๋ ์ฐธ๊ณ
- ํ์ด์ฌํํฐ ์ฐธ๊ณ
- ํ๋ก๊ทธ๋จ ์ฝ๋๋ด์ ์์ฑ๋๋ ์ค๋ช ์ด๋ ๋ฉ๋ชจ
- ์ธํฐํ๋ฆฌํฐ์ ์ํด ์คํ๋์ง์์
- (#) ์ ์ฌ์ฉํ์ฌ ์์ฑ
- """ """ ์ฌ๋ฌ์ค ์ฃผ์์ฉ์ผ๋ก ์ฌ์ฉ => ๋ณดํต ์ค๋ช ๋ฌธ ๋ฃ์๋ ์ฌ์ฉ
- ์ฝ๋์ ํน์ ๋ถ๋ถ์ ์ค๋ช ํ ๋
- ์์๋ก ์ฝ๋๋ฅผ ๋นํ์ฑํํ ๋
- ์ฝ๋๋ฅผ ์ดํดํ๊ฑฐ๋ ๋ฌธ์ํํ ๋
- ๋ค๋ฅธ ๊ฐ๋ฐ์๋ ์์ ์๊ฒ ์ฝ๋์ ์๋๋ ๋์์ ์ค๋ช ํ ๋
-
๊ฐ์ ์ข ๋ฅ์ ๊ทธ ๊ฐ์ ์ ์ฉ ๊ฐ๋ฅํ ์ฐ์ฐ๊ณผ ๋์์ ๊ฒฐ์ ํ๋ ์์ฑ
- Numeric Type = ์ ์(int), ์ค์(float), complex(๋ณต์์)
- set type = set, dict
- sequence type = list, tuple, range
- text sequence type = str(๋ฌธ์์ด)
- mapping type = dict
- ๊ธฐํ = none, boolean, functions
- ๋ฆฌ์คํธ, ํํ, ๋์ ๋๋ฆฌ ์ ์ฐจ์ด์ ์ ์์์์ผํจ
-
๋ฐ์ดํฐ ํ์ ์ด ํ์ํ ์ด์
- ๊ฐ๋ค์ ๊ตฌ๋ถํ๊ณ ์ด๋ป๊ฒ ๋ค๋ค์ผ ํ๋์ง ์ ์ ์์.
- ๊ฐ ๋ฐ์ดํฐ ๊ฐ์ ์ ํฉํ ๋๊ตฌ๋ฅผ ๊ฐ์ง
- ํ์ ์ ๋ช ์์ ์ผ๋ก ์ง์ ํ์ฌ, ์ฝ๋๋ฅผ ์ฝ๋ ์ฌ๋์ด ๋ณ์์ ์๋๋ฅผ ๋ ์ฝ๊ฒ ์ดํดํ๊ณ , ์๋ชป๋ ๋ฐ์ดํฐ ํ์ ์ ์ค๋ฅ๋ฅผ ๋ฏธ๋ฆฌ ์๋ฐฉ
* 2์ง์(binary) = 0b [print(0b10) #2]
* 8์ง์(octal) = 0o [print(0x30) #24]
* 16์ง์(hexadeciaml) = 0x [print(0x10) #16]
* print(bin(12)) = 0b1100
* print(oct(12)) = 0o14
* print(hex(12)) = 0xc
* ์ ํ ์ ๋ฐ๋
* 0.66666666666666666 = 2/3์ ๋ํ ๊ทผ์ฟ๊ฐ
* 1.66666666666666667 = 5/3์ ๋ํ ๊ทผ์ฟ๊ฐ
* ์ปดํจํฐ๋ 2์ง์๋ฅผ ์ฐ๊ธฐ ๋๋ฌธ์ 0.1์ 2์ง์๋ก ํํํ๋ฉด ๋ฌดํ๋๋ก ๋ฐ๋ณต
* => ๋ฌดํ๋์ซ์๋ฅผ ํํ ํ ์ ์์ด 10์ง๋ฒ์ ๊ทผ์ฌ๊ฐ์ ํ์
* ์ด๋ฐ ์ฆ์์ floating point rounding error ๋ผ๊ณ ํจ
- ์ค์ ์ฐ์ฐ ์ ํด๊ฒฐ์ฑ
-
- ์์์ ์์ ์ ํ์ฉ
-
- math ๋ชจ๋ ํ์ฉ
-
- 
- ์ง์ ํํ ๋ฐฉ์
- 314 * 0.01 = 314e - 2 = 314**(-2)
- e = 10^
- ์ง์ ํํ ๋ฐฉ์
* ( str, list, tuple, range )
* ์์(sequence) = ๊ฐ๋ค์ด ์์๋๋ก ์ ์ฅ (์ ๋ ฌXXX)
* ์ธ๋ฑ์ฑ(indexing) = ๊ฐ ๊ฐ์ ๊ณ ์ ์ธ๋ฑ์ค(๋ฒํธ)๋ฅผ ๊ฐ์ง๊ณ ์์ด, ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ์์น ๊ฐ์ ์ ํํ๊ฑฐ๋ ์์ ํ ์ ์์
* ์ฌ๋ผ์ด์ฑ(slicing) = ์ธ๋ฑ์ค ๋ฒ์๋ฅผ ์กฐ์ ํด ๋ถ๋ถ์ ์ธ ๊ฐ์ ์ถ์ถ ๊ฐ๋ฅ
* ๊ธธ์ด(legnth) = len()ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฅ๋ ๊ฐ์ ๊ฐฏ์(๊ธธ์ด)๋ฅผ ๊ตฌํ ์ ์์
* ๋ฐ๋ณต(lteration) = ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ์ฌ ์ ์ฅ๋ ๊ฐ๋ค์ ๋ฐ๋ณต์ ์ผ๋ก ์ฒ๋ฆฌ ๊ฐ๋ฅ
* 5๊ฐ์ง ๋ชจ๋ ์ฌ์ฉ๊ฐ๋ฅํ๊ณ ๊ฐ๋ณ,๋ถ๋ณ์ ๋ฐ๋ผ ๋๋์ ์์
-
๋ฌธ์์ด์ ์ฌ๋ฌ ๋ฌธ์์ ์กฐํฉ
-
์์ ๋ฐ์ดํ(') ๋๋ ํฐ๋ฐ์ดํ(") ์ผ๋ก ๊ฐ์ธ์ ํํ
- ์ค์ฒฉ๋ฐ์ดํ => ์์ ๋ฐ์ดํ ์์ ํฐ๋ฐ์ดํ๋ก ํํ, ํฐ๋ฐ์ดํ ์์ ์์ ๋ฐ์ดํฌ๋ก ํํ
- " ๊ฐ๋๋ค๋ผ๋ง๋ฐ์ฌ'์์์ฐจ์นด'ํํํ"
-
์ญ์ฌ๋์๋ฅผ ์ฌ์ฉํ์ฌ ํน์ํ ๊ธฐ๋ฅ ์ฌ์ฉ
- \n = ์ค๋ฐ๊ฟ
- \t = ๋ฌธ์ ์ฌ์ด ํญ ์ฝ์
- \\ = ๋ฐฑ์ฌ๋์
- \' = ์์ ๋ฐ์ดํ
- \" = ํฐ๋ฐ์ดํ
- print( '์ฒ ์์ผ \' ์๋ \' ' ) = ์ฒ ์์ผ '์๋ '
-
string Interpolation = ๋ฌธ์์ด ๋ด ๋ณ์๋ ํํ์์ ์ฝ์ ํ๋ ๋ฐฉ๋ฒ
- f-string = f ๋๋ F ์ ๋์ด๋ฅผ ๋ถ์ด๊ณ ํํ์์ {expression}์ผ๋ก ์์ฑํ์ฌ ๋ฌธ์์ด์ ํ์ด์ฌ ํํ์์ ๊ฐ์ ์ฝ์ ํจ.
- print(f'Debugging {bugs} {counts} {area}') => {} ์๋ฆฌ์ ๊ฐ ๋ณ์์ ์ ๋ ฅ๋ ๊ฐ์ด ์ถ๋ ฅ
- (์ด์ ์๋ .format ์ด๋ผ๋ ํจ์๋ฅผ ์ฌ์ฉ ํ์์ผ๋ ์ต๊ทผ์๋ f-string ์ฌ์ฉ)
- (๋ ์ด์ ์๋ %s, %d, %f ๋ฑ์ ์ฌ์ฉํ์ )
- ์ธ๋ฑ์ฑ = ๊ทธ ์๋ฆฌ์ ์์ ์ฐพ์์ค๊ธฐ // ์ฌ๋ผ์ด์ฑ = ๊ทธ ์ฌ์ด์ ์๋ฆฌ ์์ ์ฐพ์์ค๊ธฐ // ๊ธธ์ด = ์์์ ๊ฐฏ์
- 
-
์ธ๋ฑ์ค = ์ํ์ค ๋ด์ ๊ฐ๋ค์ ๋ํ ๊ณ ์ ๋ฒํธ, ๊ฐ ๊ฐ์ ์์น๋ฅผ ์๋ณ
- 
-
์ฌ๋ผ์ด์ฑ = ์ํธ์ค์ ์ผ๋ถ๋ฒ์๋ฅผ ์ถ์ถํ์ฌ ์๋ก์ด ์ํธ์ค๋ฅผ ์์ฑ
- 
- ์ฌ๋ผ์ด์ฑ ๋ฒ์์ ๋ง์ง๋ง์ ์์ธ
- [ :3] ์ด๋ผ๋ฉด ์ฒ์๋ถํฐ 3๊น์ง // ์ฒ์์ด๋ผ๋ ๊ฐ์ ์์ฑX
- [3: ] ์ด๋ผ๋ฉด 3๋ถํฐ ๋ง์ง๋ง ๊น์ง // ๋ง์ง๋ง ๋ํ ๋ง์ฐฌ๊ฐ์ง
- ๋ง์ง๋ง์ -1 ์ ์์์ง์ ์ด 0์ด๋ผ๋ ์ธ๋ฑ์ค์ ํน์ฑ์ ๊ณ ๋ คํ๊ฒ์ด๋ค !
- 
- [0:5:2] 0๋ถํฐ5๊น์ง (step)2์นธ์ฉ ์ถ์ถ
- [ : : -1] step์ ์์๋ก ์ถ์ถํ ์ ๊ฑฐ๊พธ๋ก ์ฝํ hello๊ฐ olleh๋ก ์ถ์ถ => ๋ฌธ์์ด ๋ค์ง๊ธฐ
* greeting[start:end:step]
* step>0 ์ด๋ฉด start๊ฐ 0์ด๋ฏ๋ก end-1
* step<0 ์ด๋ฉด start๊ฐ -1์ด๋ฏ๋ก end+1
-
๋ฆฌ์คํธ๋ 0๊ฐ ์ด์์ ๊ฐ์ฒด ํฌํจํ์ฌ ๋ฐ์ดํฐ ๋ชฉ๋ก ์ ์ฅ // ๋น ๋ฆฌ์คํธ๊ฐ ๊ฐ๋ฅ
-
๋๊ดํธ( [ ] )๋ก ํ์
-
์ด๋ ํ ์๋ฃํ๋ ์ ์ฅํ ์ ์์
- [ 1, 2, 3 'pyhthon' , ['hello', 'world' , '!!!']] => 5๊ฐ์ ์๋ฃ
-
์ค์ฒฉ๋ ๋ฆฌ์คํธ์ ์ ๊ทผ
- 
- [4][-1] 4๋ฒ์งธ ์ธ๋ฑ์ค์ -1 ์ฆ ๋ฌธ์์ด์ ๋ง์ง๋ง ๊ฐ '!!!' ์ถ๋ ฅ
- [-1][1][0] 3๋จ๊ณ๋ฅผ ๊ฑธ์ณ w ์ถ๋ ฅ
-
๊ฐ๋ณํ !! ์ธ๋ฑ์ค๋ฅผ ํธ์ถํ์ฌ ๋ค๋ฅธ ๊ฐ์ ์ ๋ ฅ๊ฐ๋ฅ
- 
-
0๊ฐ ์ด์์ ๊ฐ์ฒด ํฌํจ // ๋น ํํ ๊ฐ๋ฅ
-
์๊ดํธ๋ก( () )๋ก ํ์
-
์ด๋ค ์๋ฃํ๋ ์ ์ฅ ๊ฐ๋ฅ
-
ํ๋์ ์๋ฃํ๋ง ์์ด๋ (1, ) ์ผ๋ก " , " ๋ฅผ ์ฌ์ฉํด์ผํจ
-
๋ฆฌ์คํธ์ ์ ์ฌํ๋ ๋ถ๋ณ ๋ฐ์ดํฐ ์๋ฃํ
- => ๊ฐ๋ฐ์๊ฐ ์ฐ๊ธฐ๋ณด๋ค๋ ํ์ด์ฌ์ ๋ด๋ถ ๋์์์ ์ฌ์ฉ๋
-
์ฌ๋ฌ๊ฐ์ ๊ฐ์ ํ ๋นํ์ฌ ๊ทธ๋ฃนํ ํ ๋ ์ฌ์ฉ
- x, y =(10, 20) ์ด๋ด ๋ ์ฌ์ฉ
- => ๊ฐ๋ฐ์๊ฐ ์ฐ์ผ์ด ์๊ธฐ ๋๋ฌธ์ ํฌ๊ฒ ์์ํ์ง ์์๋ ๋
-
range(n)
- 0๋ถํฐ n-1๊น์ง์ ์ซ์ ์ํ์ค
-
range(n,m)
- n ๋ถํฐ m-1๊น์ง์ ์ซ์ ์ํ์ค
-
๋ง์ง๋ง์ -1 ์ ์์์ง์ ์ด 0์ด๋ผ๋ ์ธ๋ฑ์ค์ ํน์ฑ์ ๊ณ ๋ คํ๊ฒ์ด๋ค !
-
range(n,m,s)
- n ๋ถํฐ m-1๊น์ง s๋ง๋ค ๊ฑด๋๋ด ์ซ์ ์ํธ์ค
- range[start๐step]
- start < end = start๋ถํฐ end-1๊น์ง step๋งํผ ์ฆ๊ฐ
- start > end = start๋ถํฐ end+1๊น์ง step๋งํผ ๊ฐ์
-

- ๋ฆฌ์คํธ๋ฅผ ํ์ฉํ์ฌ ๊ฐ์ ํ์ฉํจ
- Key : value ์ ์ธํธ ํํ
- key๋ ๋ถ๋ณํ ์๋ฃํ๋ง ์ฌ์ฉ๊ฐ๋ฅ(str, int, float, tuple, range ...)
- value๋ ๋ชจ๋ ์๋ฃํ ์ฌ์ฉ๊ฐ๋ฅ
- ์ค๊ดํธ ( {} )๋ก ํ๊ธฐ
- 
- Key๋ฅผ ํ์ฉํ์ฌ value์ ์ ๊ทผ // ๋๊ดํธ ( [] )๋ฅผ ํ์ฉํ์ฌ ๊ฐ์ ์ถ์ถ
- ๊ฐ๋ณํ์ด๊ธฐ์ ํค๋ฅผ ํ์ฉํด value๊ฐ ๋ณ๊ฒฝ ๊ฐ๋ฅ
# dict์์ dict ๋์๋๊ฒฝ์ฐ
my_dict = {
'a1' : {'b1':1, 'b2':2, 'b3':3},
'a2' : {'b1':4, 'b2':5, 'b3':6},
'a3' : {'b1':7, 'b2':8, 'b3':9}
}
# value 5๋ฅผ ์ถ๋ ฅ
print(my_dict['a2']['b2'])
# ๋ค๋ฅธ๋ฐฉ๋ฒ .get( ) ์ ์ฌ์ฉํ๋ค
print(my_dict.get('a2').get('b2'))- ์ํ์์์ ์งํฉ์ด๋ผ ๋ณด๋ฉด ๋
- ์ค๊ดํธ ( {} )๋ก ํ๊ธฐ
- ๋น ์๋ฃํ์ ๊ผญ "set( )" ๋ก ํ๊ธฐ ํด์ผํจ ( ๋์ ๋๋ฆฌ์ ๊ฒน์น๊ธฐ ๋๋ฌธ )
- 
- ์ํ์ ์งํฉ๊ณผ ๋๊ฐ์ ์ฐ์ฐ
- | ํฉ์งํฉ // - ์ฐจ์งํฉ // & ๊ต์งํฉ //
- ํํ๊ณผ ๊ฐ์ด ์กฐ๊ธ ๋ ํนํ๋ค
# set ์ค์ต
set_1 = { 1,2,3,4,5,6,7,8,8,9,10}
set_2 = {2,3,5,6,8,9,11}
# ํฉ์งํฉ
print(set_1 | set_2)
# ์ฐจ์งํฉ
print(set_1 - set_2)
# ๊ต์งํฉ
print(set_1 & set_2)# ์ธํธ์ ์ฌ์ฉ์์ - ๋ก๋๋ฒํธ ์ถ์ฒจ
import random
lotto_set=set()
while len(lotto_set) < 6 :
number = random.randint(1,45)
lotto_set.add(number) #set์ ์ถ๊ฐํ๋ .add
lotto_list = list(lotto_set)
lotto_list.sort # sort๋ ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
print(lotto_list)- 0์ด๋์ ๋ค๋ฅด๊ฒ ์ ๋ง ๊ฐ์ด ์๋ค ๋ผ๋ ๊ฒ์ ํํ
- True ์ False
- ๋น๊ต / ๋ ผ๋ฆฌ ์ฐ์ฐ์ ํ๊ณผ ๊ฒฐ๊ณผ๋ก ์ฌ์ฉ
- ์ฃผ๋ก ์กฐ๊ฑด/ ๋ฐ๋ณต๋ฌธ๊ณผ ํจ๊ป ์ฌ์ฉ
- 
- str, list, tuple, set, dict
- 
- ๋ถ๋ณ/๊ฐ๋ณ๊ณผ ์์ ์ฌ๋ถ์ ๋ฐ๋ผ ๋๋ ์ง๋ค
- range๋ ๋ฌด์๋ฏธํ๋ค์ฉ
- ๋ถ๋ณ๊ณผ ๊ฐ๋ณ์ ์ฐจ์ด
- ๋ถ๋ณ์ ํ๋์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ํ ๋นํด์ ๋ฐ๊ฟ์์๋ค
- ๊ฐ๋ณ์ ๊ฐ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์์ ํ๋์ ๊ฐ์ ํ ๋นํ๊ธฐ ๋๋ฌธ์ ๋ฐ๊ฟ ์ ์๋ค.
- ํ์ฌ ๋ฆฌ์คํธ๋ฅผ ๊ฐ์ฒด์ ์ฐธ์กฐ๋ฅผ ๋ชจ์๋์ ์ปฌ๋ ์ ์ด๋ผ ์นญํจ
List_1 = [1, 2, 3,]
List_2 = List_1
List_1[0] = 100
print(List_1) # [100, 2, 3]
print(List_2) # [100, 2, 3]
- ๋ฆฌ์คํธ๋ ๊ฐ์ ๊ณณ์ ๋ณต์ฌํ์ฌ ๋ณํ์ํค์ง ์์๋ ๋๊ฐ์์ง // ํ๋ ์์ ๋ค๋ฅด๋ ๊ฐ์ฒด๋ฅผ ๊ณต์ ํ๊ฒ ๋๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฌธ์์ด : ' ' ๋ถ๋ณ ์ํธ์ค ์๋ฃํ -> ์๊ณ ๋ฆฌ์ฆ IMํ ๋ฌธ์ํ ํ์ฑ(์ธ๋ฑ์ฑ, ์ฌ๋ผ์ด์ฑ ๋ฑ)
ํ- ๊ฐ๋ก ํ์ค์ ๋ปํจ
์ด- ์ธ๋ก ํ์ค์ ๋ปํจ
1ํ 1์ด 2์ด 3์ด 4์ด
2ํ
3ํ
4ํ
- ํ์ด์ฌ์ด ์๋์ผ๋ก ํ๋ณํ ํ๋ ๊ฒ
- Boolean๊ณผ Numeric Type์์๋ง ๊ฐ๋ฅ ์ ์ -> False = 0 ์ค์ -> False = 0.0 ๋ฌธ์์ด -> False = "" (๊ณต๋ฐฑ์๋๊ณ ์์ ์์ด์ผํจ)
- 
- ๋๋ฌธ์ ๋ํ์๋ ๊ฐ์ด ๋์ฌ ์ ์๊ฒ๋
- ์ ์ + ์ค์= ์ค์
- ๊ฐ๋ฐ์๊ฐ ์ง์ ํ๋ณํ ์ํค๋ ๊ฒ
- str(๋ฌธ์์ด) -> integer : ํ์์ ๋ง๋ ์ซ์๋ง ๊ฐ๋ฅ
- integer -> str : ๋ชจ๋ ๊ฐ๋ฅ
print(int('1')) #1
print(str(1)+'๋ฑ' #1๋ฑ
print(float( '3.5' )) # 3.5
print(int( 3.5 ) ) #3 // ํ๋ณํํ ๋๋ ๋ฒ๋ฆผ์ด ๋๋ค.
prunt(int( '3.5' ) ) # ์๋ฌ๋ฐ์
=> print( int( float('3.5') ) ) # 3- 
- 
- 
- 
- ํญ์ ๋ถ๋ฑํธ๊ฐ ๋จผ์ ์ฌ์ฉ๋์ด์ผํจ
- ==, !=์ ๋๋ฑ์ฑ์ ๋๊ณ ๊ฐ์ ํ์ธํ๋ is์ is not์ ์๋ณ์ฑ์ ๋๊ณ ๋ ํผ๋ฐ์ค(์ฃผ์)๋ฅผ ๋น๊ตํ๋ค.
- is ์ฐ์ฐ์๋ ๋๋๋ก์ด๋ฉด None, True, False ๋ฑ์ ๋น๊ตํ ๋ ์ฌ์ฉ!
print(2.0 == 2) # True
print(2,0 is 2) #False
a=3
b=3
print(a==b) #True
print(a is b) #False- and(๋ ผ๋ฆฌ๊ณฑ) = ๋ชจ๋ ๋ค ์ฐธ์ด์ฌ์ผ True
- or(๋ ผ๋ฆฌํฉ) = ํ๋ ๋ง ์ฐธ์ด์ฌ๋ True
- not(๋ ผ๋ฆฌ๋ถ์ ) = True-> False // False->True
- ๋น๊ต ์ฐ์ฐ์์ ํจ๊ป ์ฌ์ฉ๊ฐ๋ฅํ๋ค
๋จ์ถํ๊ฐ์์
- 
- and
- ์ฒซ๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ False๋ผ๋ฉด ์ ์ฒดํํ์์ False์ด๋ฉฐ ๋๋ฒ์งธ ํผ์ฐ์ฐ์๋ ๋ฌด์
- ์ฒซ๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ True๋ผ๋ฉด ๋๋ฒ์งธ ํผ์ฐ์ฐ์์ ์ํด ๊ฒฐ์ ๋๋ฉฐ, ๋๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ ๊ฒฐ๊ณผ๋ก ๋ฐํ
- or
- ์ฒซ๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ True๋ผ๋ฉด ์ ์ฒดํํ์์ True์ด๋ฉฐ ๋๋ฒ์งธ ํผ์ฐ์ฐ์๋ ๋ฌด์
- ์ฒซ๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ False๋ผ๋ฉด ๋๋ฒ์งธ ํผ์ฐ์ฐ์์ ์ํด ๊ฒฐ์ ๋๋ฉฐ, ๋๋ฒ์งธ ํผ์ฐ์ฐ์๊ฐ ๊ฒฐ๊ณผ๋ก ๋ฐํ
- a์b๊ฐ ๊ณต๋ฐฑ์ด ์๋๊ธฐ๋๋ฌธ์ true์ด๋ฉฐ ๋๋ฒ์งธ ์ฐ์ฐ์์ธ b๊ฐ ํฌํจ๋์ง์๊ธฐ์ false
- a์b๊ฐ ๊ณต๋ฐฑ์ด ์๋๊ธฐ๋๋ฌธ์ true์ด๋ฉฐ ๋๋ฒ์งธ ์ฐ์ฐ์์ธ a๊ฐ ํฌํจ๋๊ธฐ๋๋ฌธ์ True
- in = ์ผ์ชฝ ํผ์ฐ์ฐ์๊ฐ ์ค๋ฅธ์ชฝ ํผ์ฐ์ฐ์์ ์ํธ์ค์ ์ํ๋์ง๋ฅผ ํ์ธ!
- not in = ์ผ์ชฝ ํผ์ฐ์ฐ์๊ฐ ์ค๋ฅธ์ชฝ ํผ์ฐ์ฐ์์ ์ํธ์ค์ ์ํ์ง์๋์ง๋ฅผ ํ์ธ!
- 
- ์ํธ์ค ๊ฐ ์ฐ์ฐ์์ ์ฌ์ฉ๋ ๋ ๋ค๋ฅธ ์ญํ ์ ๊ฐ์ง
-
- ๊ฒฐํฉ ์ฐ์ฐ์
-
- ๋ฐ๋ณต ์ฐ์ฐ์
- 
- 
- ์ฌ์ฌ์ฉ์ฑ์ด ๋๊ณ , ์ฝ๋์ ๊ฐ๋ ์ฑ๊ณผ ์ ์ง๋ณด์์ฑ์ด ํฅ์
- ๋๋ฒ๊น ํ๊ธฐ ์ฉ์ดํ๋ค.
- ์ ๋๊ฐ ํจ์ abs( ) // sum // str // type // input // int
- ์ถ๋ ฅํจ์ print( ) ๋ฑ์ด ์กด์ฌํ๋ค.
- ์์ฒ๋ผ ํจ์๋ฅผ ์คํํ๊ธฐ ์ํด ํจ์์ ์ด๋ฆ์ ์ฌ์ฉํ๋๊ฒ์ ํจ์ ํธ์ถ (fuction call) ์ด๋ผ ํ๋ค.
- 
- def ํ์ฌ ํจ์์ ์ด๋ฆ๊ณผ ๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํด์ฃผ๊ณ ,
- return ํ์ฌ ํจ์์ ๋ณ์ ๊ณ์ฐ ๊ฐ์ ์ง์ ํด์ค๋ค.
- ์ฃผ์์ ํตํด ํจ์์ ๋ํ ์ค๋ช ์๋ฅผ ์์ฑํด์ค๋ค.
- def ํค์๋๋ก ์์
- ์ดํ ํจ์์ด๋ฆ ์์ฑ
- ๊ดํธ์์ ๋งค๊ฐ๋ณ์๋ฅผ ์ ์
- ๋งค๊ฐ๋ณ์๋ ํจ์์ ์ ๋ฌ๋๋ ๊ฐ
- 
- def ~~ : ๋ค์์ ๋ค์ฌ์ฐ๊ธฐ๋ ์ฝ๋๋ธ๋ก
- ํจ์๊ฐ ์คํ๋ ๋ ์ํ๋๋ ์ฝ๋๋ฅผ ์ ์
- ์ฃผ์์ ์ด์ฉํด ์ค๋ช ์ ์ ํ์ ์ผ๋ก ์์ฑ๊ฐ๋ฅ
- return ์ ์ด์ฉํด ํ์ํ ๊ฒฝ์ฐ ๋ฐํํ ๊ฐ์ ๋ช ์ํ ์ ์์
- ํจ์์ ์คํ์ ์ข ๋ฃํ๊ณ ํธ์ถ๋ถ๋ถ์ผ๋ก ๋ฐํ
- result๊ฐ None์ด ๋ฌ๋ค๋ฉด return์ ์์ฑํ์ง ์์ ๊ฒ
- 
def ํจ์๋ช
(๋งค๊ฐ๋ณ์)
์ฝ๋ (ํจ์๋ฐ๋)
return ~~~ (ํจ์๋ฐํ๊ฐ)
์ธํ์ ํ๋ผ๋ฏธํฐ, ์์ํ์ ๋ฆฌํด ๋ฒจ๋ฅ
# ํจ์ํธ์ถ
ํจ์๋ช
(ํจ์์ธ์)
๋งค๊ฐ๋ณ์๋ ์์์๋ ์๊ณ ์์ ์๋ ์์ต๋๋ค.
๋ฐํ๊ฐ์ ์์ ์๋ ์๊ณ ์์ ์๋ ์์ต๋๋ค.
-> ์ด 4๊ฐ์ง ์ ํ์ ํจ์ ์กด์ฌ!!def get_sim(num1, num2):
return (num1 + num2)
num1 = 5
num2 = 3
result = get_sum(num1,num2)
print(result)
# ๋งค๊ฐ๋ณ์๊ฐ ์๋ ํจ์๋ก ๋ณํ(์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๊ฐ๊ฒ)
def get_sum():
num1, num2 = 5, 3
return num1 + num2
result= get_sum()
print(result)
# return ๋ฐํ๊ฐ์ด ์๋ ํจ์๋ก ๋ณํ(์ถ๋ ฅ๊ฒฐ๊ณผ๋ ๊ฐ๊ฒ)
def get_sim(num1, num2):
result = num1 + num2
print(result)
num1 = 5
num2 = 3
get_sum(num1, num2)- ๋งค๊ฐ๋ณ์ (parameter)
- ํจ์๋ฅผ ์ ์ํ ๋, ํจ์๊ฐ ๋ฐ์ ๊ฐ์ ๋ํ๋ธ ๋ณ์
- ์ธ์ (argument)
- ํจ์๋ฅผ ํธ์ถํ ๋ ์ค์ ๋ก ์ ๋ฌํ๋ ๊ฐ
- 
-
์์น์ธ์ (positional Arguments)
- ํจ์ ํธ์ถ์ ์ธ์์ ์์น์ ๋ฐ๋ผ ๋ฐ๋์ ์ ๋ฌ ํด์ผ ํ๋ ์ธ์
- 
- ํจ์์ ํ์ ์์ name๊ณผ age์ ์์ ๋์ธ alice์ 25๊ฐ ์์น์ธ์!!
-
๊ธฐ๋ณธ ์ธ์ ๊ฐ(Default Argument Values)
- ํจ์ ์ ์์์ ๋งค๊ฐ๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ ํ ๋นํ๋ ๊ฒ
- ํจ์ ํธ์ถ ์ ์ธ์๋ฅผ ์ ๋ฌํ์ง ์์ผ๋ฉด, ๊ธฐ๋ณธ๊ฐ์ด ๋งค๊ฐ๋ณ์์ ํ ๋น๋
- 
- age =30 ์ด ๊ธฐ๋ณธ์ธ์๊ฐ์ด ๋๋ค. ( ๋ฐ์์ฒ๋ผ 40์ ๋ฃ์ง ์์๊ธฐ ๋๋ฌธ)
-
ํค์๋ ์ธ์ (keyword arguments)
- ํจ์ ํธ์ถ์ ์ธ์์ ์ด๋ฆ๊ณผ ํจ๊ป ๊ฐ์ ์ ๋ฌํ๋ ์ธ์
- ๋งค๊ฐ๋ณ์์ ์ธ์๋ฅผ ์ผ์น์ํค์ง ์๊ณ , ํน์ ๋งค๊ฐ๋ณ์์ ๊ฐ์ ํ ๋น ๊ฐ๋ฅ.
- ์์์ ์๊ด์์ด ์ธ์์ ์ด๋ฆ์ ๋ช ์ํด์ ์ ๋ฌํ๋ ๊ฒ.
- 
- name๊ณผ age์ ์์์ ์๊ด์์ด ์ด๋ฆ์ ๋ช ์ํด์ ์ ๋ฌํ์๋ค.
- ์์น์ธ์์ ํจ๊ป ์ฌ์ฉํ ์ ์๋ค!!
-
์์์ ๊ฐ๋ณ์ธ์ ๋ชฉ๋ก ( Arbitrary )
- ์ ํด์ง์ง ์์ ๊ฐ์์ ์ธ์๋ฅผ ์ฒ๋ฆฌํ๋ ์ธ์
- ํจ์ ์ ์์ ๋งค๊ฐ๋ณ์์์ ( * ) ์ ๋ถ์ฌ์ ์ฌ์ฉํ๋ฉฐ, ์ฌ๋ฌ๊ฐ์ ์ธ์๋ฅผ tuple๋ก ์ฒ๋ฆฌํ๋ค.
- 
- ์๊ดํธ๋ฅผ ํตํด ํํ์์ ์ ์ ์๋ค.
- ์ถ๋ ฅ์ด ์ฃผ์๊ณผ๊ฐ์ด (1,2,3)์ด ๋์จ๋ค.
-
์์์ ๊ฐ๋ณํค์๋์ธ์ ๋ชฉ๋ก
- ์ ํด์ง์ง ์์ ๊ฐ์์ ํค์๋ ์ธ์๋ฅผ ์ฒ๋ฆฌํ๋ ์ธ์
- ํจ์ ์ ์์ ๋งค๊ฐ๋ณ์ ์์ ( ** ) ๋ฅผ ๋ถ์ฌ ์ฌ์ฉ.
- ์ฌ๋ฌ๊ฐ์ ์ธ์๋ฅผ dict๋ก ๋ฌถ์ด์ฒ๋ฆฌ
- 
- ํจ์ ์ธ์ ๊ถ์ฅ ์์ฑ์์
- ์์น -> ๊ธฐ๋ณธ -> ๊ฐ๋ณ -> ํค์๋ -> ๊ฐ๋ณํค์๋
- ํธ์ถ ์ ์ธ์๋ฅผ ์ ๋ฌํ๋ ๊ณผ์ ์์ ํผ๋์ ์ค์ด๊ธฐ ์ํจ( ์ ๋์ ์ธ ๊ท์น X)
- 
-
ํจ์๋ ์ฝ๋ ๋ด๋ถ์ local scope ๋ฅผ ์์ฑํ๋ฉฐ, ๊ทธ ์ธ์ ๊ณต๊ฐ์ธ global scope๋ก ๊ตฌ๋ถ
-
scope
- global scope : ์ฝ๋ ์ด๋์์๋ ์ฐธ์กฐํ ์ ์๋ ๊ณต๊ฐ
- local scope : ํจ์๊ฐ ๋ง๋ scope ( ํจ์ ๋ด๋ถ์์๋ง ์ฐธ์กฐ ๊ฐ๋ฅ)
-
variable
- global variable : global scope์ ์ ์๋ ๋ณ์
- local variable : local scope์ ์ ์๋ ๋ณ์
# scope
def my_func() :
num = 1
print(num)
# num ์ ํจ์์์๋ง ์ ์๋์๊ธฐ ๋๋ฌธ์ ์ฐพ์ง๋ชปํ๋ค
# ํจ์๋ด์ num์ด local // print()๋ด์ num์ด global- num์ local์ ์กด์ฌํ๊ธฐ๋๋ฌธ์ global์์ ์ฌ์ฉํ ์ ์๋ค.
- ์ด๋ ๋ณ์์ ์๋ช ์ฃผ๊ธฐ ์ ์ฐ๊ด์ด ์๋ค.
- built-in scope
- ํ์ด์ฌ ์คํ ํ ์์ํ ์ ์ง
- global scope
- ๋ชจ๋์ด ํธ์ถ๋ ์์ ์ดํ or ์ธํฐํ๋ฆฌํฐ๊ฐ ๋๋ ๋๊น์ง ์ ์ง
- local scope
- ํจ์๊ฐ ํธ์ถ๋ ๋ ์์ฑ๋์ด, ์ข ๋ฃ๋ ๋๊น์ง๋ง ์ ์ง
- ํ์ด์ฌ์์ ์ฌ์ฉ๋๋ ์ด๋ฆ๋ค์ ํน์ ํ ์ด๋ฆ๊ณต๊ฐ์ ์ ์ฅ๋์์
- ์๋์ ๊ฐ์ ์์๋ก ์ด๋ฆ์ ์ฐพ์ ๋๊ฐ๋ฉฐ, LEGB Rule์ด๋ผ๊ณ ๋ถ๋ฆ
- local scope : ์ง์ญ๋ฒ์(ํ์ฌ ์์ ์ค์ธ ๋ฒ์)
- Enclosed scope : ์ง์ญ๋ฒ์ ํ๋จ๊ณ ์ ๋ฒ์
- Global scope : ์ต์๋จ์ ์์นํ ๋ฒ์
- Built-in scope : ๋ชจ๋ ๊ฒ์ ๋ด๊ณ ์๋ ๋ฒ์(์ ์ํ์ง์์๋ ์ฌ์ฉํ ์ ์๋ ๋ชจ๋ ๊ฒ)
- ํจ์ ๋ด์์ ๋ฐ๊นฅ Scope ๋ณ์์ ์ ๊ทผ์ ๊ฐ๋ฅํ๋ ์์ ์ ๋ถ๊ฐํจ.
- 
# bulit-in scope๋ ๋ด์ฅํจ์
z = 3 # global scope
def outer():
x=1 # ๋ก์ปฌ๋ณ์
def inner():
y=2 #๋ก์ปฌ๋ณ์
result = x + y # x๊ฐ enclosed scope์ ํด๋น
print(result)
inner()
outer()- LEGB Rule์ ์ํด ํ์scope์์ ๋ด์ฅํจ์๋ฅผ ์ฌ์ฉ์ ๋ด์ฅํจ์๋ฅผ ํ์scope์์ ์ฌ์ฉ ๋ถ๊ฐํ๊ธฐ๋๋ฌธ์ ์ฌ์ฉํ์ง ์๋๋ค.
- LEGB Rule๋๋ฌธ์ ๋ด์ฅํจ์์ ๊ฐ์ ์ด๋ฆ์ด ์ฌ์ฉ๋ถ๊ฐ
- 
-
๋ณ์์ ์ค์ฝํ๋ฅผ ์ ์ญ๋ฒ์๋ก ์ง์ ํ๊ธฐ ์ํด ์ฌ์ฉ
-
์ผ๋ฐ์ ์ผ๋ก ํจ์ ๋ด์์ ์ ์ญ ๋ณ์๋ฅผ ์์ ํ๋ ค๋ ๊ฒฝ์ฐ์ ์ฌ์ฉ
-

-
ํจ์๋ด์์ num์ +1 ํ๋ ๊ฒ๋๋ฌธ์ globalํค์๋ ์ฌ์ฉ
-
๊ถ์ฅํ์ง ์์ผ๋ ๋ฌธ์ ํ์ด๋๋ฌธ์ ์ฌ์ฉํ๊ธดํจ.
-
์ฃผ์์ฌํญ
- globalํค์๋ ์ ์ธ์ ์ ์ ๊ทผ X
- 
- ๋งค๊ฐ๋ณ์์ globalํค์๋ ์ฌ์ฉ๋ถ๊ฐ
- 
globlaํค์๋๋ ๊ฐ๊ธ์ ์ฌ์ฉํ์ง์๊ณ , ํจ์๋ก ๊ฐ์ ๋ฐ๊พธ๊ณ ์ ํ๋ค๋ฉด ์ธ์๋ก ๋๊ธฐ๊ณ ํจ์์ ๋ฐํ๊ฐ์ ์ฌ์ฉํ๋๋ก ๊ถ์ฅ
- ํน์ ์๊ณ ๋ฆฌ์ฆ์ ํํ์ ๋ณ์์ ์ฌ์ฉ์ด ์ค๊ณ ์ฝ๋์ ๊ฐ๋ ์ฑ์ด ์ข์์ง
- 1๊ฐ์ด์์ base case(์ข ๋ฃ๋๋ ์ํฉ)์ด ์กด์ฌํ๊ณ ์๋ ดํ๋๋ก ์์ฑ
- ์ฌ๊ทํจ์์ ์์๋ก ํฉํ ๋ฆฌ์ผ์ด ์๋ค
- n! = n*(n-1)! = n*(n-1)*(n-2)! = . . .
- 
- 
- ํฉํ ๋ฆฌ์ผ์ด ์๊ธฐ์์ ์ ์ฌ๊ท์ ์ผ๋ก ํธ์ถํ์ฌ ์ซ์n์ ํฉํ ๋ฆฌ์ผ ๊ณ์ฐ
- ์ฌ๊ทํจ์๋ n์ด 0์ด ๋ ๋๊น์ง ๋ฐ๋ณต, ์ข ๋ฃ์กฐ๊ฑด์ ์ค์ ํ์ฌ ๋ฉ์ถ์ ์๋๋ก ํจ
- ์ฌ์ฌ๊ท ํธ์ถ์ ๊ฒฐ๊ณผ๋ฅผ ์ด์ฉํด ๋ฌธ์ ๋ฅผ ์์ ๋จ์์ ๋ฌธ์ ๋ก ๋ถํ ํ๊ณ , ๋ค์ ๋ถํ ๋ ๋ฌธ์ ๋ค์ ๊ฒฐ๊ณผ๋ฅผ ์ข ํฉํ์ฌ ์ต์ข ๊ฒฐ๊ณผ ๋์ถ.
- => ์ข ๋ฃ์กฐ๊ฑด์ด ๋ช ํํ๊ณ , ๋ฐ๋ณต๋๋ ํธ์ถ์ด ์ข ๋ฃ์กฐ๊ฑด์ ํฅํ๋๋ก ์์ฑ! STACK์ด๋ผ ์นญํ๊ธฐ๋ํจ.
- map(function, iterable)
- ์ํ ๊ฐ๋ฅํ ๋ฐ์ดํฐ๊ตฌ์กฐ(iterable)์ ๋ชจ๋ ์์์ ํจ์๋ฅผ ์ ์ฉํ๊ณ , ๊ทธ๊ฒฐ๊ณผ๋ฅผ map object๋ก ๋ฐํ
#map ํจ์
numbers = [ 1, 2, 3 ]
result = map(str, numbers)
print(result) #<map object at 0x0000019A62C613D0>
print(list(result)) #['1', '2', '3']
a = list(map(int, input().split()))- zip(*iterables)
- ์์์ iterable์ ๋ชจ์ ํํ์ ์์๋ก ํ๋ zip object๋ฅผ ๋ฐํ
names = ['Alice', ' Bob', 'Charlie']
ages = [30, 35]
cities = ['New york', 'London', 'Paris' ]
for name, age, city in zip(names, ages, cities):
print(name, age, city)
keys = ['a', 'b', 'c']
values = [1,2,3]
my_dict = dict(zip(keys, values))
print(my_dict)- ๋ฆฌ์คํธ์ ๊ฐฏ์๊ฐ ๋ง์ง์์ผ๋ฉด ๋ง๋ ๊ฐฏ์ ๋งํผ๋ง ์์ฑ๋!!!
- lambda ๋งค๊ฐ๋ณ์ : ํํ์
- lamdaํค์๋๋ฅผ ์ฌ์ฉ
- ๋งค๊ฐ๋ณ์ : ํจ์์ ์ ๋ฌ๋๋ ๋งค๊ฐ๋ณ์๋ค // ์ผํ๋ฅผ ์ฌ์ฉํด ๊ตฌ๋ถ
- ํจ์์ ์คํ์ฝ๋๋ธ๋ก์ผ๋ก ๊ฒฐ๊ณผ๊ฐ์ ๋ฐํํ๋ ํํ์
# lambda์ map ํจ์
numbers = [1, 2 ,3 ,4 ,5]
result = list(map(lambda x: x * 2, numbers))
print(result)
# def double_number(x):
# return x *2
# ์์ lambdaํจ์ ๋ฅผ ํ์ด์ฐ๋ฉด ์ด๋ ๊ฒ๋๋ค
# lambda ๋งค๊ฐ๋ณ์ : ํํ์
#1. 1ํ์ฑ์ด๊ธฐ๋๋ฌธ์ ํจ์ ๋ช
์ด ํ์์๋ค.
#2. ํํ์์ ๊ฒฐ๊ณผ๊ฐ ๋ฐํ๋๊ธฐ๋๋ฌธ์ return๋ ํ์์๋ค- ์ฌ๋ฌ๊ฐ์ value๋ฅผ ํ๋์ ์ํ์ค๋ก ๋ฌถ๋ ๊ณผ์ ( ํ๋์ ๋ณ์์ ๋ฌถ์)
- ํํํํ๋ก ๋ฌถ์ธ๋ค.
# ํจํน : ์ฌ๋ฌ ๊ฐ์ ํ๋์ ์ํ์ค๋ก ๋ฌถ๋ ๊ณผ์
# ์์1)
packing_values = 1,2,3,4,5
print(packing_values) # (1, 2, 3, 4, 5) ํํํํnumbers = [1,2,3,4,5]
a, *b, c = numbers # *(์ ์คํฐ๋ฆฌ์คํฌ): ํจํน์ฐ์ฐ์๋ก ํ์ฉ
print(a) #1
print(b) #[2, 3, 4] *b๋ ๋จ์ ์์๋ค์ ๋ฆฌ์คํธ๋ก ํจํนํ์ฌ ํ ๋น
print(c) # 5- print ํจ์์ ์์์ ๊ฐ๋ณ์ธ์๋ฅผ ์์ฑํ ์ ์๋ ์ด์
- print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
- objects๋ฅผ ํ ์คํธ ์คํธ๋ฆผ file๋ก ์ธ์ํ๋๋ฐ, sep์ผ๋ก ๊ตฌ๋ถ๋๊ณ end๋ฅผ ๋ค์ ๋ถ์ ๋๋ค. ์๋ค๋ฉด sep, end, file ๋ฐ flush๋ ๋ฐ๋์ ํค์๋ ์ธ์๋ก ์ ๊ณตํด์ผ ํฉ๋๋ค.
- ๋ชจ๋ ๋น ํค์๋ ์ธ์๋ str()ํ๋ฏ์ด ๋ฌธ์์ด๋ก ๋ณํ๋ ํ ์ฐ์ด๋ฏ sep๊ณผ end๋ ๋ฌธ์์ด์ด์ฌ์ผ ํฉ๋๋ค.
- objects๊ฐ ์ฃผ์ด์ง์ง ์๋๋ค๋ฉด print()๋ end๋ง ์ฌ์ฉํฉ๋๋ค
# print ํจ์์ ์์์ ๊ฐ๋ณ์ธ์๋ฅผ ์์ฑํ ์ ์๋ ์ด์
print('hi', 'hello', 'goodbye', sep = "-") # hi-hello-goodbye
print('hi',end=' ')
print('hello') # hi hello- ํจํน๋ ๋ณ์๋ฅผ ๊ฐ๋ณ์ ์ธ ๋ณ์๋ก ๋ถ๋ฆฌํ์ฌ ํ ๋นํ๋๊ฒ
- ( * )๋ ๋ฆฌ์คํธ ์ธํจํน, ( ** )๋ ๋์ ๋๋ฆฌ ํค-๊ฐ์ ์ธํจํน
# *(์ ์คํฐ๋ฆฌ์คํฌ)๋ฅผ ์ธํจํน ์ฐ์ฐ์๋ก ํ์ฉ
names=['key', 'bob', 'jane']
print(*names) # key bob jane
## ** : ๋์
๋๋ฆฌ ์ธํจํน ์ฐ์ฐ์
def my_funtion(x,y,z):
print(x, y, z)
dict_values={'x':1, 'y':2, 'z':3}
my_funtion(**dict_values) # 1 2 3- ๋ชจ๋๊ณผ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๊ฐ์ ๋ง์ธ๊ฐ? xx
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋ชจ๋๊ณผ ํจํค์ง์ ์งํฉ์ด๋ค.
- ํ ํ์ผ๋ก ๋ฌถ์ธ ๋ณ์์ ํจ์ ๋ชจ์
- ํน์ ํ ๊ธฐ๋ฅ์ ํ๋ ์ฝ๋๊ฐ ์์ฑ๋ ํ์ด์ฌ ํ์ผ
- import ํน์ from์ ์ฌ์ฉํด ๋ชจ๋์ ํธ์ถํด ์ฌ์ฉํ๋ค.
# ํ์ด์ฌ math ๋ชจ๋ ์์
import math
print(math.pi) # 3.141592653589793
print(math.sqrt(16)) # 4.0
# ctrl์ ๋๋ฅธ์ฑ math๋ฅผ ๋๋ฅด๋ฉด ์์ ํจ์๋ฅผ ๋ณผ ์ ์๋ค.
# help(math) ์
๋ ฅ๋ ๊ฐ๋ฅ
from math import pi, sqrt
print(pi)
print(sqrt(2))
#from ๊ณผ import ์ฐจ์ด 2
import random
print(random.randint(1,46))
from random import *
print(randint(1,46))- ๋ชจ๋ my_math.py ์์ฑ ( ์ด๋ฆ์ ๊ฐ์ ์์์ ์์ฑ)
- ๋ค๋ฅธ .pyํ์ผ์์ import ํน์ from ํ์ฌ ํธ์ถ
# my_math.py
def add(x,y):
return x + y
# ์ฌ์ฉ์ ์ค์ ๋ชจ๋
import my_math
print(my_math.add(1,2))
from my_math import *
print(add(1,2))- ๋ชจ๋๊ณผ ํจํค์ง์ ์งํฉ
- ๊ด๋ จ๋ ๋ชจ๋๋ค์ ํ๋์ ๋๋ ํ ๋ฆฌ์ ๋ชจ์๋์๊ฒ

- ์ผ์ชฝ ์ฌ์ง๊ณผ ๊ฐ์ด ๋๋ ํ ๋ฆฌ๋ด์ ํ์ฉํ์ฌ ๊ฒฝ๋ก ํ์ฑํ
# ๋ผ์ด๋ธ๋ฌ์ง- ํจํค์ง ๋๋ ํ ๋ฆฌ
from my_package.math import my_math
from my_package.statistics import tools
print(my_math.add(1,2))
print(tools.mod(1,2))- ์ค์น์์ด ๋ฐ๋ก importํ์ฌ ์ฌ์ฉ
- python installer package = ์ธ๋ถํจํค์ง ์ค์น๋ฅผ ๋์์ฃผ๋ ํจํค์ง ๊ด๋ฆฌ ์์คํ
- pip install Somepackage (== 1.0.0) or (>= 1.0.5) ๋ฑ ๋ฒ์ ์ ๋ช ์ํ์ฌ ์ค์น๊ฐ๋ฅ
- git bash์์ pip install requests ์ ๋ ฅ
- ramdom-data
- Json viewer
# ํจํค์ง ์ค์น Json
import requests
url = 'https://random-data-api.com/api/v2/users'
response = requests.get(url).json()
print(response)
# https://jsonviewer.stack.hu/์์ ์ถ๋ ฅ์ ํ
์คํธ์ ์
๋ ฅํ๋ฉด ์ ๋ฆฌ๋ ๋ชจ์ต ํ์ธ ํ ์ ์์
# ์ค์ต) united states๋ฅผ ์ถ๋ ฅํด๋ณด์ธ์. - key๋ก ์ ๊ทผ
print(response['address']['country'])
print(response.get('address').get('country'))- ๋ชจ๋๋ค์ ์ด๋ฆ๊ณต๊ฐ์ ๊ตฌ๋ถํ์ฌ ์ถฉ๋์ ๋ฐฉ์งํ๊ณ
- ๋ชจ๋๋ค์ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ณ ์ฌ์ฌ์ฉํ ์ ์๋๋ก ๋๋ ์ญํ
- ์กฐ๊ฑด๋ฌธ
- ๋ฐ๋ณต๋ฌธ
- ์ฝ๋์ ์คํ ํ๋ฆ์ ์ ์ดํ๊ฑฐ๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ฝ๋ ๋ธ๋ก์ ๋ฐ๋ณต์ ์ผ๋ก ์คํ
- ์ฃผ์ด์ง ์กฐ๊ฑด์์ ํ๊ฐํ์ฌ ์ฐธ(True)์ธ ๊ฒฝ์ฐ์๋ง ์ฝ๋๋ธ๋ก์ ์คํํ๊ฑฐ๋ ๊ฑด๋๋
- if, elif, else
- ์กฐ๊ฑด์์๋ ๋น๊ต์ฐ์ฐ, ๋ ผ๋ฆฌ์ฐ์ฐ, ๋ฉค๋ฒ์ฐ์ฐ๋ฑ ,,,
# if statement์ ๊ธฐ๋ณธ ๊ตฌ์กฐ
if ํํ์ :
์ฝ๋๋ธ๋ก
elif ํํ์ :
์ฝ๋๋ธ๋ก
else :
์ฝ๋๋ธ๋ก
num = int(input('์ซ์๋ฅผ ์
๋ ฅํ์ธ์ : '))
# if statement
# num์ด ํ์๋ผ๋ฉด
if num % 2 == 1 :
print(f"{num}์ ํ์ ์
๋๋ค")
# if num % 2 : ๋ผ๊ณ ์จ๋ ๊ฐ๋ฅํ๋ค. ๊ฒฐ๊ณผ๊ฐ์ธ 1์ด Ture๋ฅผ ๋ปํ๊ธฐ์ if๋ฌธ์ด ์คํ๋๋ค.
# num์ด ์ง์๋ผ๋ฉด
else : # num % 2 == 0 ์ ์ฐ์ง ์์๋๋
print(f"{num}์ ์ง์ ์
๋๋ค")- ๋ณต์ ์กฐ๊ฑด๋ฌธ ( if // elif // elif // else )
- ์กฐ๊ฑด์์ ๋์์ ๊ฒ์ฌํ๋๊ฒ ์๋๋ผ ์์ฐจ์ ์ผ๋ก ๋น๊ต
- ์ค์ฒฉ ์กฐ๊ฑด๋ฌธ
dust = 480
if dust >150:
print('๋งค์ฐ๋์จ')
if dust > 300:
print(' ์ํํด์! ๋๊ฐ์ง๋ง์ธ์!')
elif dust > 80:
print('๋์จ')
elif dust > 30:
print('๋ณดํต')
else :
print('์ข์')- ์์ ๊ฐ์ด if ๋ฌธ ๋ด์ if๋ฌธ์ด ์กด์ฌํ๋ ์ค์ฒฉ ์กฐ๊ฑด๋ฌธ๋ ๊ฐ๋ฅํ๋ค.
- ์ฃผ์ด์ง ์ฝ๋ ๋ธ๋ก์ ์ฌ๋ฌ ๋ฒ ๋ฐ๋ณตํด์ ์คํํ๋ ๊ตฌ๋ฌธ
- ํน์ ์์ ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํ
- ์ฃผ์ด์ง ์กฐ๊ฑด์ด ์ฐธ์ธ ๋์๋ง ๋ฐ๋ณตํด์ ์คํ
- for // while
- ์์์ ์ํธ์ค ํญ๋ชฉ๋ค์ ๊ทธ ์ํธ์ค์ ๋ค์ด์๋ ์์๋๋ก ๋ฐ๋ณต
- ์ํ์ค๋ ์ธ๋ฑ์ค๊ฐ ์๊ณ ์์๊ฐ ์๊ณ ๊ธธ์ด(๊ฐฏ์)๊ฐ ์๋ ํญ๋ชฉ
# for statement ์ ๊ธฐ๋ณธ๊ตฌ์กฐ
for ๋ณ์ in ๋ฐ ๊ฐ๋ฅํ ๊ฐ์ฒด :
์ฝ๋๋ธ๋ก- ๋ฐ๋ณต๋ฌธ์์ ์ํํ ์ ์๋ ๊ฐ์ฒด
- ์ํธ์ค ๊ฐ์ฒด ๋ฟ๋ง์๋๋ผ dict, set ๋ฑ๋ ํฌํจ
- [ 1, 2, 3] ์ด๋ผ๋ฉด 1(๋ฆฌ์คํธ ๋ด ์ฒซ ํญ๋ชฉ)๋ถํฐ ๋ณ์์ ํ ๋น๋๊ณ ์ฝ๋๋ธ๋ก์ ์คํ ํ 2(2๋ฒ์งธ ํญ๋ชฉ)๊ฐ ๋ ํ ๋น๋.
- ์ด๋ ๊ฒ ๋ง์ง๋ง ๊ฐ์ฒด๊น์ง ๋ณ์์ ํ ๋น๋๋ฉด for ๋ฌธ์ ๋๋๊ฒ ๋๋ค.
# ๋ฌธ์์ด ์ํ
country = 'korea'
for char in country :
print(char)
"""
k
o
r
e
a
"""
# range ์ํ
for i in range(5)
print(i)
"""
0
1
2
3
4
"""
# ์ธ๋ฑ์ค๋ก ์ ๊ทผํด์ ๋ณ๊ฒฝํ๊ธฐ
numbers = [4, 6, 10, -8 ,5 ]
for i in range(len(numbers)) :
numbers[i] = numbers[i] * 2
print(numbers) # [8, 12, 20, -16, 10 ]# ์ค์ฒฉ๋ ๋ฐ๋ณต๋ฌธ
outers = ['A', 'B']
inners = ['c', 'd']
for outer in outers :
for inner in inners :
print(outer, inner)
"""
A c
A d # ์์ชฝ ๋ฐ๋ณต๋ฌธ์ด ๋๋์ผ ๋ฐ์ผ๋ก ๋๊ฐ๊ฒ ๋
B c
B d
"""
# ์ค์ฒฉ LIST ์ํ
# ๋ฐ๊นฅ ๋ฆฌ์คํธ๋ฅผ ์ํํ๋ฉด์ ์ค์ฒฉ๋ฐ๋ณต์ ์ฌ์ฉํด ์์ชฝ ๋ฐ๋ณต ์ํ
elements = [['A', 'B'], ['c', 'd']]
for elem in elements :
print (elem)
"""
['A', 'B']
['c', 'd']
"""
for elem in elements :
for item in elem :
print (item)
"""
A
B
c
d
"""- ์ฃผ์ด์ง ์กฐ๊ฑด์์ด ์ฐธ์ธ ๋์ ๊ณ์ ๋ฐ๋ณตํด์ ์คํ( ์กฐ๊ฑด์์ด ๊ฑฐ์ง์ด ๋ ๋๊น์ง๋ง ๋ฐ๋ณต)
# while statement ์ ๊ธฐ๋ณธ๊ตฌ์กฐ
while ์กฐ๊ฑด์ :
์ฝ๋๋ธ๋ก
# while ๋ฌธ ์์
a = 0
while a <3:
print(a)
a += 1
print('๋')
"""
0
1
2
๋
"""
# while๋ฌธ์ ์ฌ์ฉํด ์
๋ ฅ๊ฐ์๋ํ ์ข
๋ฃ์กฐ๊ฑด ํ์ฉ (if๋ฌธ)
number = int(input("์์ ์ ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์. : ")
while number <= 0 :
if number < 0 :
print( ' ์์๋ฅผ ์
๋ ฅํ์ต๋๋ค.')
else :
print(' 0์ ์์ ์ ์๊ฐ ์๋๋๋ค. ')
number = int(input("์์ ์ ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์. : ")
print('์ํ์ต๋๋ค!')-
for๋ฌธ ( iterable์ ์์๋ฅผ ํ๋์ฉ ์ํํ๋ฉฐ ๋ฐ๋ณต)
- ๋ฐ๋ณต ํ์๊ฐ ๋ช ํํ๊ฒ ์ ํด์ ธ ์๋ ๊ฒฝ์ฐ
- ์๋ฅผ ๋ค์ด ๋ฆฌ์คํธ, ํํ, ๋ฌธ์์ด ๋ฑ๊ณผ ๊ฐ์ ์ํ์ค ํ์์ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ๋
-
while (์ฃผ์ด์ง ์กฐ๊ฑด์์ด ์ฐธ์ธ ๋์ ๋ฐ๋ณต)
- ๋ฐ๋ณต ํ์๊ฐ ๋ถ๋ช ํํ๊ฑฐ๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ฐ๋ณต์ ์ข ๋ฃํด์ผ ํ ๊ฒฝ์ฐ
- ์๋ฅผ ๋ค์ด ์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฐ์ ํน์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋ ๋ ๊น์ง ๋ฐ๋ณตํ๋ ๊ฒฝ์ฐ
- for๋ฌธ๊ณผ while์ด ๋๋ก๋ ์ผ๋ถ๋ง ์คํํ๊ณ ์ค๊ฐ์ ๋ฉ์ถ์ด์ผํ ๋
- break ๋ฐ๋ณต์ ์ฆ์ ์ค์ง
- continue ๋ค์ ๋ฐ๋ณต์ผ๋ก ๊ฑด๋๋
- if ์ break์ ์ฌ์ฉํจ
- break์ ๋ง๋ ์ for ํน์ while๋ฌธ์ด ๋ฐ๋ก ์ข ๋ฃ๋.
- 
- if์ continue๋ฅผ ์ฌ์ฉ
- continue๋ฅผ ๋ง๋๋ฉด ํ์ ๋จ์ ์กฐ๊ฑด๋ฌธ ๋ด ์ฝ๋๋ฅผ ๋ชจ๋ ๊ฑด๋๋ฐ๊ณ ๋ค์๋ฐ๋ณต์ด ๋.
- 
- break๊ณผ continue๋ฅผ ๋จ์ฉํ๋ ๊ฒ์ ์ฝ๋์ ๊ฐ๋ ์ฑ ์ ํ
- ํน์ ์ข ๋ฃ์กฐ๊ฑด์ ๋ง๋ค์ด break์ ๋์ ํ๊ฑฐ๋ if๋ฌธ์ ์ฌ์ฉํด continue ๋์ ์ฝ๋๋ฅผ ๊ฑด๋๋ธ ์ ์์
- 
- expression์ ์ ๋ฆฌ์คํธ์ ๋ค์ด๊ฐ ํญ๋ชฉ๋ค์ ํํ
- ๊ฐ๊ฒฐํ๊ณ ํจ์จ์ ์ธ ๋ฆฌ์คํธ ์์ฑ ๋ฐฉ๋ฒ
-
- [ ]
-
- map+list( )
# LIST Comprehension ๊ตฌ์กฐ
[expression for ๋ณ์ in iterable ]
list(expression for ๋ณ์ in iterable)
์์
# list comprehension
# 1. 1-10 ๊น์ง ์์๋ฅผ ๊ฐ์ง๋ ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ
new_list = []
for i in range(1,11):
new_list.append(i) # append ๋ฆฌ์คํธ์ ๊ฐ์ ์์ฐจ์ ์ผ๋ก ๋ฃ๋ ํจ์
print(new_list)
# 2. list comprehension
new_list2 = [i for i in range(1,11)]
print(new_list2)
# LIST Comprehension ๊ตฌ์กฐ
[expression for ๋ณ์ in iterable if ์กฐ๊ฑด์]
list(expression for ๋ณ์ in iterable if ์กฐ๊ฑด์)
# 1. 1-10 ์ค ํ์ ์์๋ฅผ ๊ฐ์ง๋ ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ
new_list = []
for i in range(1,11):
if i % 2 ==1 :
new_list.append(i) # append ๋ฆฌ์คํธ์ ๊ฐ์ ์์ฐจ์ ์ผ๋ก ๋ฃ๋ ํจ์
print(new_list)
# 2. list comprehension
new_list2 = [i for i in range(1,11) if i % 2 ==1 ]
print(new_list2)# ๋ฆฌ์คํธ๋ฅผ ๋ง๋๋ 3๊ฐ์ง ๋ฐฉ๋ฒ ๋น๊ต
# ์ ์ 1,2,3์ ๊ฐ์ง๋ ๋ฆฌ์คํธ ๋ง๋ค๊ธฐ
numbers = [ '1', '2', '3']
# 1. for ๋ฐ๋ณต๋ฌธ
new_numbers = []
for number in numbers:
new_numbers.append(int(number))
print(new_numbers)
# 2.map
new_numbers2 = list(map(int, numbers))
print(new_numbers2)
# 3. list comprehension
new_numbers3 = [int(number) for number in numbers]
print(new_numbers3)- ์๋ฌด ๋์๋ ํ์ง์๊ณ ๋์ด๊ฐ๋ ์ญํ
- ๋ฌธ๋ฒ์ ์ผ๋ก๋ ๋ฌธ์ฅ์ด ํ์ํ์ง๋ง, ํ๋ก๊ทธ๋จ ์คํ์๋ ์ํฅ์ ์ฃผ์ง์์์ผ ํ ๋ ์ฌ์ฉ
-
- ์ฝ๋ ์์ฑ์ค ๋ฏธ์์ฑ๋ถ๋ถ
- 
-
- ์กฐ๊ฑด๋ฌธ์์ ์๋ฌด๋ฐ ๋์์ ์ํํ์ง ์์์ผํ ๋
- 
-
- ๋ฌดํ๋ฃจํ์์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋์ง ์์ ๋ passํ์ฌ ๋ฃจํ๋ฅผ ๊ณ์ ์งํํ๋ ๋ฐฉ๋ฒ
- 
- iterable ๊ฐ์ฒด์ ๊ฐ ์์์ ๋ํด ์ธ๋ฑ์ค์ ํจ๊ป ๋ฐํํ๋ ๋ด์ฅํจ์
- 
# enumerate
result = [ 'a', 'b', 'c']
print(enumerate(result)) # <enumerate object at 0x000002946EBBE680>
print(list(enumerate(result))) # [(0, 'a'), (1, 'b'), (2, 'c')]
for index, elem in enumerate(result):
print(index, elem)
# 0 a
# 1 b
# 2 c