명확한 질문 하기
에러에 관한 도움을 받으려면
1. Purpose
2. WHAT I WANT
3. What I have done
4. What kind of error happened
5. How I wrote down the code
must include these 5 and ask!
#Python code 뿐만 아니라 다양한 프로그래밍 언어를 다운로드 없이 브라우저에서 작성할 수 있게 도와주는
repl.it 사이트 이용하자.
#variable(변수)을 생성하는 방법
변수의 이름을 길게 지어야 할 때 단어끼리 분리되길 원해서, a_ 와 단어로 연결해준다. snake case라고 붙인다.
- a_string = 문자열 " " or ' ' 안에 넣어줘야함
- a_number = 숫자
- a_float = . 다음에 숫자가 떠다닌다고 해서 float 소수점 있는 숫자
- a_boolean = True / Flase
- a_None = None 없다. nothing. 파이썬에만 있다.
#sequence type은 list와 같다. days = ["Mon", "Tue", "Wed", "Thur", "Fri", 'Sat"]print(days)
#파이썬의 학교에 가서 list의 기능들을 볼 수 있다.docs.python.org/ko/3/library/index.html
x in s |
s 의 항목 중 하나가 x 와 같으면 True, 그렇지 않으면 False |
print("mon" in days) = True
s[i] |
s 의 i 번째 항목, 0에서 시작합니다 |
print(days[2]) = Wed
컴퓨터는 0 부터 인식하므로 3을 칠시에 Thur이 나온다.
len(s) |
s 의 길이 |
print(len(days)) = 6
days 안에 단어가 몇 개 인지
mutable operations = 값을 변경할 수 있다. (list, dictionary)
list, dictionary)immutable operations = 값을 변경할 수 없다. (tuple)
s.append(x) |
시퀀스의 끝에 x 를 추가합니다 (s[len(s):len(s)] = [x] 와 같습니다) |
days.append("Sun")print(days) 하면 SUN이 추가 된다. list는 sequence지만 수정이 가능하다. = mutable 하다 = 가변 시퀀스 형
s.reverse() |
제자리에서 s 의 항목들의 순서를 뒤집습니다 |
days.reverse()print(days) 하면 데이터를 뒤집어서 보여준다. 끝이 처음으로 오게 끔.다른언어들은 이렇게 하기 위해서는 더 복잡한 코드가 필요하다. 파이썬의 장점.
#1.2 Tuples and Dicts, #1.3 Built in Functions, #1.4 Creating a Your First Python Function
튜플은 아무도 변경할 수 없는 불변 시퀀스인데, 보통 이질적인 데이터의 모음을 저장하는 데 사용됩니다. 튜플은 등질적인 데이터의 불변 시퀀스가 필요한 경우에도 사용됩니다. ()로 감싸서 만들 수 있다.
immutable operations
days = ("Mon", "Tue", "Wed", "Thur", "Fri", "Sat")
dictionary
nico = {
"name": "Nico",
"age" : 29,
"Korean": True,
"fav_food": ["Kimchi",
"Sashimi"]
}
이것을 dictionary라고 부르고 {}안에 감싸서 만든다. 이 안에 list, tuple, number, boolean 등 [] 을 넣든가 해서 다양한 type 으로 저장이 가능하다.
print(nico)을 입력하면 nico에 대한 값이 쭉 뜬다. 정보를 추가를 하려면
nico["handsome"] = True
print(nico)
를 입력하면 추가된 값도 밑에 뜬다.
prin()는 함수(function) 중 하나이고 함수는 어떤 행동(기능)을 가지고 있고 계속 반복 할 수 있다. 즉, 적용하고자 하는 행동(기능)을 넣어놓고 그 기능을 반복해서 쓸 수 있다는 것.
len(). 이건 길이가 얼마인지 알아서 계산해준다.print(len.(dsfsadfsdafsdafsdafasdf))= 21built - in function 은 집 사면 기본 옵션으로 있는 빌트인 냉장고, 빌트인 전자레인지 마냥 파이썬 깔면 그냥 딸려오는 기본 내장 함수들이다.
#1.5 Function Arguments
define function 함수를 정의한다고 해서 def 함수명(): 을 쓰는데 파이썬의 함수는 JS처럼 {}[, ]로 묶지 않고 function body안에 tap or space bar로 띄어쓰기를 쓰면 함수 안에 있다는 것을 표현한다. 이 부분은 함수 내용이 된다.
def say_hello():
print("hello")
print("yaya") 하면 hello 만 뜰 것임.
function의 이름뒤에 ()를 추가하면 function을 실행하는 okay 버튼을 누르는 것과 같다.
function argument
funtion의 괄호 안에 넣어주는 것을 argument(인수)라고 한다.
def say_hello(who):
print("hello", who)
say_hello("sung")
who 자리에 valid한 데이터는 다 들어갈 수 있음.
argument를 통해 함수에 인풋을 넣는다고 생각하면 됨.
def plus(a,b):
print (a+b)
plus (2,5)
하면 7 뜸
def minus(a,b=0):
print (a-b)
minus (2,5)
하면 -3 뜸
인수를 설정한만큼 적어주지 않으면 에러가 생긴다.
원한다면 default를 정의해 줄 수 있다.
def minus(a, b=0) print(a-b)
minus(2)
def say _hello(name="anonymous"): print("hello", name)
say_hello()say_hello("sung")
하면 hello anonymoushello sung이 나온다.
대부분의 function은 외부에서 input을 받아서 사용하게 된다. 그리고 이것은 필수적으로 같이 사용된다. (name, 계산기 plus에서의 a,b 같은)
#1.6 Returns
def p_plus(a,b):
print (a + b)
def r_plus(a,b)
return a + b
p_result = p_plus(2,3)
r_result = r_plus(2,3)
prunt(p_result, r_result)
#1.7 Keyworded Arguments
Function을 활용할 때 '()'안 변수의 순서에 맞게 함수들이 실행된다는 것을 알 수 있다.
def say_hello(name, age):
return "hello" + name + "you are" + age + "years old"
hello = say_hello(age="12", name="nico"
print(hello)
가끔 변수들의 수가 많아 순서가 햇갈릴 수가 있는데 이를 해결할 방법으로 Keyworded Arguments를 활용할 수 있다. 각 변수에 이름을 지정해주는 방식인데 이를 통해 순서가 뒤바뀌더라도 문제없이 function이 실행된다는 사실을 알 수 있다.
원래는 result = plus(a=1, b=30) Positional Arguement 하겠지만 keyworded Arguement는 인자인데(argument) 인자의 순서를 위치에 따라서 정해지는 게 아닌 argument의 이름으로 쌍을 이뤄주는 것
def plus(a, b):
return a - b
result = plus(b=30, a=1)
print(result)
하면 -29가 나온다.
string 안에 변수명을 써주고 싶을 때,
변수이름에는 중괄호를 써주고 string 맨 앞에 f를 붙여준다.
def say_hello(name, age):
return f"hello {name} you are {age} years old"
hello = say_hello (age="12", name="nico")
print(hello)
( "print(hello)" 이것도 쳐야지 나온다.)
argument의 순서를 신경쓰고 싶지 않을 때는 위의 방법으로 입력이 가능하다.
argument가 많아지면, 순서를 실수할 수 있기 때문에 이 방법도 중요하다!
#1.8 Code Challenge! (01:37)
def Plus(a, b):
return a + b
def Minus(a, b):
return a - b
def Times(a, b):
return a * b
def Division(a,b):
return a/b
def Negetion(a,b):
return a//b
def Remainder(a, b):
return a % b
def Power(a, b):
return a ** b
print(Plus(9, 4))
print(Minus(9, 4))
print(Times(9, 4))
print(Division(9, 4))
print(Remainder(9, 4))
print(Negetion(9,4))
print(Power(9, 4)) - 9*9*9*9 라는 뜻
#1.9 Conditionals part One
Function을 만들 때 if와 else를 활용하여 조건문을 만들 수 있다.
조건문을 활용하여 function을 실행할 때 변수의 상태에 따라 다른 명령들이 실행된다.
def plus(a ,b):
if type(b) is int or type(b) is float:
return a + b
else:
return None
print(plus(12, 1.2))
return은 안쪽에 있어야 한다.
'[자기계발] > 유튜브로 코딩배우기' 카테고리의 다른 글
<Nomad Coders> 파이썬 실습 web scrapper (1) | 2021.02.01 |
---|---|
<Nomad Coders> 파이썬 1.9~ 1.12 (0) | 2021.02.01 |
<생활코딩> 많이 보이는 DATABASE 살짝 맛보기 (0) | 2021.01.26 |
<유튜버 - 생활코딩> WEB2 - JavaScript 34~ JS파일로 쪼개서 정리 하기 (0) | 2021.01.25 |
<유튜버 - 생활코딩> WEB2 - JavaScript 29~ 33객체 (0) | 2021.01.22 |