변수, if-for문, 함수, 모듈 클래스
a=1
a"가나다"
예약어/함수명으로는 변수를 선언하면 안된다.
(if, for, print ...)
print("안녕하세요", "코딩온입니다")
print("안녕하세요", 11) -> 글자와 숫자는 +로 안됨
print("안녕하세요" + "코딩온입니다")
print("안녕", end=" ")
print("안녕하세요")
-> 이렇게 쓰면 한 줄로 출력 가능
input()
user_input = input("숫자를 입력하세요.") -> 무조건 문자열로 받는다.
print(user_input)
->
숫자를 입력하세요. 5
5
a = input("숫자를 입력하세요.")
number = int(a) -> 문자열을 int형으로 바꾼후 number에 삽입
print(a>1) -> t/f로 출력
a = int(input("숫자를 입력하세요")) 이렇게 해도 되는건가요? -> 가능
주석처리는 #으로 한다.
#이름, 나이를 입력받고
#안녕하세요. (이름)님(나이)세
name = input("이름을 입력하세요: ")
age = input("나이를 입력하세요: ")
print("안녕하세요", name+"님"+"("+age+")"+"세")
-------------------
이름을 입력하세요: 육은별
나이를 입력하세요: 23
안녕하세요 육은별님(23)세
if ~~라면 ~~~하겠다.
if 3>5:
print("3은 5보다 큽니다") -> 조건이 f이면 아예 실행X.
elif -> else if
if 3>5:
print("5은 3보다 큽니다.")
elif 4>3:
print("4는 3보다 큽니다.")
-> 4는 3보다 큽니다.
if 3>5:
print("5은 3보다 큽니다.")
elif 4>3:
print("4는 3보다 큽니다.")
elif 5>3:
print("ddd")
-> 4>3에서 true나오면 그냥 함수 종료.
if 3>5:
print("5은 3보다 큽니다.")
elif 4<3:
print("4는 3보다 큽니다.")
elif 5<3:
print("ddd")
else:
print("다 틀렸다")
-> 앞에 조건문이 다 틀렸기 때문에 else만이 출력된다. -> else는 조건X
5 < a < 10 -> X
and 연산자를 이용해서 a > 5 and a < 10
for i in range(10):
print("안녕하세요") -> 10번 반복하겠다.
for i in range(1, 11):
print(i) -> 1부터 시작 (11-1은 10번)
for i in range(5, 11):
print(i) -> 5부터 10까지 출력
for i in range(5, 11):
print(i, end=" ") -> 가로로 출력
for i in range(5, 11, 2):
print(i, end=" ") -> 2씩 증가
for i in range(11, 1, -2):
print(i, end=" ") -> 역순으로 출력
for i in ["a", "b", "c"]:
print(i, end=" ") -> a b c 출력
age = int(input("나이를 입력하세요: "))
if age >= 1 and age <= 7:
print("유아")
elif age >= 8 and age <=13:
print("초등학생")
elif age >= 14 and age <=16:
print("중학생")
elif age >= 17 and age <=19:
print("고등학생")
elif age >= 20:
print("성인")
num = int(input("숫자를 입력해주세요 : "))
for i in range(1,num+1):
print(i, end=" ")
#조건1 : 숫자를 입력하세요. 라는 문구를 출력하고 사용자로부터 숫자를 입력받으세요.
#조건2 : 입력된 숫자를 n이라 할 때, 1부터 n까지 for문을 실행하며 1은 1번, 2는 2번, 3은 3번...n은 n번 출력하세요.
#Ex : 3을 입력할 경우, 1 2 2 3 3 3 이 출력되야 합니다.
n = int(input("숫자를 입력하세요: "))
for i in range(1,n+1):
print(i, i, end=" ") -> i를 i번 반복하여 출력
number = int(input("숫자를 입력하세요."))
for i in range(1, number+1):
for j in range(i):
print(i)
n = int(input("숫자를 입력하세요: "))
for i in range(1,10):
print(n*i, end=" ")
#조건1 : 나이를 입력하세요. 라는 문구를 출력하고 사용자로부터 숫자를 입력받으세요.
#조건2 : 입력된 숫자가 20이상이면 "성인", 아니면 "미성년자"를 출력하세요.
#조건3 : 입력된 숫자가 20이상이면 추가적으로 입력된 숫자가 짝수인지 홀수인지 검사하여 각각 "나이가 짝수인 성인", "나이가 홀수인 성인"을 출력하세요.
#조건4 : 입력된 숫자가 20미만이면 추가적으로 입력된 숫자가 짝수인지 홀수인지 검사하여 각각 "나이가 짝수인 미성년자", "나이가 홀수인 미성년자"를 출력하세요.
num = int(input("나이를 입력하세요: "))
if num >= 20:
print("성인")
if num % 2 == 0:
print("나이가 짝수인 성인")
elif num % 2 == 1:
print("나이가 홀수인 성인")
elif num < 20:
print("미성년자")
if num % 2 == 0:
print("나이가 짝수인 미성년자")
elif num % 2 == 1:
print("나이가 홀수인 미성년자")
"a" * 2 = a a
list1 = [] -> 크기가 0
list1 = ["a", "b", "c"] -> 크기가 3
index = 0 , 1 , 2
print(list1[1]) -> b가 출력
print(list[0:2]) -> 0부터 1번까지 출력(뒤에잇는 숫자 -1번만큼 돈다)
-> ['a', 'b'] -> 슬라이싱
print(len(list1)) -> 리스트의 길이를 출력한다. -> 3
index란? 리스트에 각각에 원소에 번호를 매긴다, 그게 index.
len(), sum(), min(), max()
sum -> 원소 다 더하기
min -> 가장 작은거 출력
max -> 가장 큰거 출력
print(sum(list1) / len(list1)) -> 평균구하기
list1.append(4) -> 원소 추가
list1.extend([4,5]) -> 4,5 원소 추가
list1.insert(1,10) -> 1이 인덱스, 10은 추가하고싶은 숫자 -> 1번 자리에 10이 추가됨
list1.remove(2) -> 2의 값을 가진 걸 삭제한다. -> 만약 중복될경우 앞에 것만 삭제됨
del list1[1] -> 1번 인덱스에 있는 원소를 삭제한다.
a = "abcdef"
print(a[0]) -> a
def test():
print("test")
-> 함수 선언
test()를 쓰면 test를 출력한다.
def test (aa):
print(aa)
이렇게 썼으면
test("안녕") 안에 이렇게 aa를 채워줘야함
def test(aa, bb = "안녕하세요"):
print(aa + bb)
test("안녕", "바이") -> 안녕바이
test("안녕") -> 안녕안녕하세요, 이미 b에 디폴트값이 있기 때문에 하나만 적어줘도 된다.
def test(aa, cc, bb = "안녕하세요"):
return aa + bb + cc
-> 출력은 아니고 그냥 반환
print(test("안녕","바이"))
==print("안녕바이안녕하세요")
함수를 따로 모아서 작성하고 쓰는 것,
이걸 어떻게 가져와서 쓰지?
=> import m(모듈 파일의 이름을 적으면 됨)
print(m.add(2,3)) => 함수 앞에 모듈.함수 이렇게 써줘야함
def mul():
for i in range(1,10):
print(i*2)
for i in range(1,10):
print(i*3)
for i in range(1,10):
print(i*4)
import mod1
mod1.mul()
def gugudan(num):
for i in range(1,10):
print(num, "X", i, "=", num*i)
for i in range(2,10):
mod1.gugudan(i)
class Test: //클래스 선언->대문자로 시작해야함
number = 30
def __init__(self): -> 클래스 안에 함수는 메쏘드라고 부른다. 인자에 self를 무조건 넣어야한다. (이 이름을 가진 함수는 생성자)
self.number = number 위에 넘버와 다른 것임.
def transfer(self):
number = number+1 물론 위에 number가 아님
만약 self.number 이렇게 하면 다 사용할 수 있음/
생성자 => __init__(self)
객체가 생성되면 생성자가 그냥 바로 출력됨.
a = Test(31) // 클래스를 담은 변수는 객체라고 한다.
b = Test(35)
print(a.number) => 31
print(b.number) => 35 //출력이 되는건 아님
a.transfer()
print(Test.number) // 30을 출력