강의자료에 들어가보면 아래의 문구가 있다.
"본 강의의 목적은 파이썬 문법을 보다 체계적으로 이해할 수 있도록, 빠르게 이론을 습득하고 퀴즈로 숙달하게 만드는 데 있습니다.
또, 향후 마주칠 난이도 있는 문법들을 눈으로, 손으로 먼저 경험해보겠습니다. 🔥 "
그래서 이번 주에 프로젝트로 파이썬게임(3개에서 1개로 변동)과 UI클론 2개가 있나보다....
프로젝트와는 별개로
파이썬 문법 기초강의는 기초적인 문법 + 퀴즈 + 심화 문법/쓰임새들로 되어있다.
수강하면서 제일 중요한 점은 외우려고 하지 말기 !
# 파이썬 기초문법 강의 1-3
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-3 | 변수 선언⭐️⭐️⭐️⭐️⭐️️')
a = 3 # 3을 a에 넣는다.
print(a)
b = a # a에 들어 있는 값인 3을 b에 넣는다.
print(b)
a = 5 # a에 5라는 새로운 값을 넣는다.
print(a, b) # 5
# 파이썬 기초문법 강의 1-3
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-3 | 숫자형 자료형⭐️⭐️⭐️⭐️⭐️️')
a = 7
b = 2
a + b # 9
a - b # 5
a * b # 14
a / b # 3.5
a + 3 * b # 13 (여러 연산을 한 줄에 할 경우 사칙연산의 순서대로!)
(a + 3) * b # 20 (소괄호를 이용해서 먼저 계산할 부분을 표시해줄 수 있어요!)
a = a + 3 # 7에 3을 더한 값을 다시 a에 저장
print(a) # 10
a += 3 # 줄여 쓸 수도 있다. 같은 의미!
a // b # 3 (몫)
a % b # 1 (나머지)
a ** b # 49 (거듭제곱)
# 파이썬 기초문법 강의 1-3
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-3 | Bool 자료형⭐️⭐️⭐️⭐️⭐️️')
x = True # 참
y = False # 거짓
# 소문자로 쓰면 자료형으로 인식하지 않고 변수명이라 생각해 에러가 납니다~
z = true # name 'true' is not defined
true = 1 # True/False는 변수명으로 쓸 수 없어요!
4 > 2 # True 크다
5 < 1 # False 작다
6 >= 5 # True 크거나 같다
4 <= 4 # True 작거나 같다
3 == 5 # False 같다
4 != 7 # True 같지 않다
a = 4 > 2 # True
not a # False NOT 연산자로 참을 거짓으로, 거짓을 참으로 바꿔준다.
a and b # False AND 연산자로 모두 참이어야 참을 반환한다.
a or b # True OR 연산자로 둘 중 하나만 참이면 참이다.
# 파이썬 기초문법 강의 1-4
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-4 | 문자열⭐️⭐️⭐️⭐️⭐️️')
# 작은 따옴표 또는 큰 따옴표. 둘 다 같아요!
a = "aa"
b = 'aa'
a = 1
b = "a"
c = a
print(a, b, c) # 1 "a" 1
print("I'm happy :)")
first_name = "Harry"
last_name = "Potter"
first_name + last_name # HarryPotter
first_name + " " + last_name # Harry Potter
a = "3"
b = "5"
a + b # 35
a = "3"
a + 5 # 문자열과 숫자형은 더할 수 없어서 에러!
print(len("abcde")) # 5
print(len("Hello, Sparta!")) # 14
print(len("안녕하세요.")) # 6
sentence = 'Python is FUN!'
sentence.upper() # PYTHON IS FUN!
sentence.lower() # python is fun!
# 이메일 주소에서 도메인 'gmail'만 추출하기
myemail = 'test@gmail.com'
result = myemail.split('@') # ['test','gmail.com'] (뒤에 배울 '리스트'라는 자료형이에요 :))
result[0] # test (리스트의 첫번째 요소)
result[1] # gmail.com (리스트의 두 번째 요소
result2 = result[1].split('.') # ['gmail','com']
result2[0] # gmail -> 우리가 알고 싶었던 것
result2[1] # com
# 한 줄로 한 번에!
myemail.split('@')[1].split('.')[0]
txt = '서울시-마포구-망원동'
print(txt.replace('-', '>')) # '서울시>마포구>망원동'
f = "abcdefghijklmnopqrstuvwxyz"
f[1] # b 파이썬은 숫자를 0부터 셉니다
f[4:15] # efghijklmno f[4]부터 f[15] 전까지, 총 15-4=11개!
f[8:] # ijklmnopqrstuvwxyz f[8]부터 끝까지, 앞의 8개 빼고!
f[:7] # abcdefg 시작부터 f[7] 전까지, 앞의 7개!
f[:] # abcdefghijklmnopqrstuvwxyz 처음부터 끝까지
myemail = 'abc@sparta.co'
domain = myemail.split('@')[1].split('.')[0]
print(domain)
# 파이썬 기초문법 강의 1-5
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-5 | 리스트⭐️⭐️⭐️⭐️⭐️️')
a = [1, 5, 2]
b = [3, "a", 6, 1]
c = []
d = list()
e = [1, 2, 4, [2, 3, 4]]
a = [1, 5, 2]
print(len(a)) # 3
b = [1, 3, [2, 0], 1]
print(len(b)) # 4
a = [1, 3, 2, 4]
print(a[3]) # 4
print(a[1:3]) # [3, 2]
print(a[-1]) # 4 (맨 마지막 것)
a = [1, 2, [2, 3], 0]
print(a[2]) # [2, 3]
print(a[2][0]) # 2
# 덧붙이기
a = [1, 2, 3]
a.append(5)
print(a) # [1, 2, 3, 5]
a.append([1, 2])
print(a) # [1, 2, 3, 5, [1, 2]]
# 더하기 연산과 비교!
a += [2, 7]
print(a) # [1, 2, 3, 5, [1, 2], 2, 7]
# 정렬하기
a = [2, 5, 3]
a.sort()
print(a) # [2, 3, 5]
a.sort(reverse=True)
print(a) # [5, 3, 2]
# 요소가 리스트 안에 있는지 알아보기
a = [2, 1, 4, "2", 6]
print(1 in a) # True
print("1" in a) # False
print(0 not in a) # True
# 파이썬 기초문법 강의 1-5
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-5 | 딕셔너리⭐️⭐️⭐️⭐️⭐️️')
# 딕셔너리는 키(key)와 밸류(value)의 쌍으로 이루어진 자료의 모임입니다. 영한사전에서 영어 단어를 검색하면 한국어 뜻이 나오는 것처럼요!
person = {"name": "Bob", "age": 21}
print(person["name"])
# 딕셔너리를 만드는 데는 여러가지 방법을 쓸 수 있습니다.
a = {"one": 1, "two": 2}
# 빈 딕셔너리 만들기
a = {}
a = dict()
# 딕셔너리의 요소에는 순서가 없기 때문에 인덱싱을 사용할 수 없어요.
person = {"name": "Bob", "age": 21}
print(person[0]) # 0이라는 key가 없으므로 KeyError 발생!
# 딕셔너리의 값을 업데이트하거나 새로운 쌍의 자료를 넣을 수 있습니다.
person = {"name": "Bob", "age": 21}
person["name"] = "Robert"
print(person) # {'name': 'Robert', 'age': 21}
person["height"] = 174.8
print(person) # {'name': 'Robert', 'age': 21, 'height': 174.8}
# 딕셔너리의 밸류로는 아무 자료형이나 쓸 수 있어요. 다른 딕셔너리를 넣을 수도 있죠!
person = {"name": "Alice", "age": 16, "scores": {"math": 81, "science": 92, "Korean": 84}}
print(person["scores"]) # {'math': 81, 'science': 92, 'Korean': 84}
print(person["scores"]["science"]) # 92
# 딕셔너리 안에 해당 키가 존재하는지 알고 싶을 때는 in을 사용합니다.
person = {"name": "Bob", "age": 21}
print("name" in person) # True
print("email" in person) # False
print("phone" not in person) # True
# - 14) 리스트와 딕셔너리의 조합
# - 딕셔너리는 리스트와 함께 쓰여 자료를 정리하는 데 쓰일 수 있습니다.
people = [{'name': 'bob', 'age': 20}, {'name': 'carry', 'age': 38}]
# people[0]['name']의 값은? 'bob'
# people[1]['name']의 값은? 'carry'
person = {'name': 'john', 'age': 7}
people.append(person)
# people의 값은? [{'name':'bob','age':20}, {'name':'carry','age':38}, {'name':'john','age':7}]
# people[2]['name']의 값은? 'john'
# 파이썬 기초문법 강의 1-6
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-6 | 조건문⭐️⭐️⭐️⭐️⭐️️')
# - `if`문
# - 조건을 만족했을 때만 특정 코드를 실행하도록 하는 문법입니다.
money = 5000
if money > 3800:
print("택시 타자!")
# 파이썬에서는 어디까지 구문에 포함되는지를 들여쓰기로 구분하기 때문에 아주 중요합니다.
# 조건에는 불 자료형이 들어갑니다. money > 3800은 True
money = 5000
if money > 3800:
print("택시 타자!")
# 조건을 만족하지 않을 때 다른 코드를 실행하고 싶을 때 쓰는 문법입니다.
money = 2000
if money > 3800:
print("택시 타자!")
else:
print("걸어가자...")
# 다양한 조건을 판단할 때는 elif를 쓰면 좋아요!
age = 27
if age < 20:
print("청소년입니다.")
elif age < 65:
print("성인입니다.")
else:
print("무료로 이용하세요!")
# 파이썬 기초문법 강의 1-7
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-7 | 반복문⭐️⭐️⭐️⭐️⭐️️')
# - `for`문
# - 0부터 9까지 숫자를 출력해볼까요?
print(0)
print(1)
print(2)
...
print(9)
# 파이썬에서는 아래처럼 쓰는 것이 더 자연스럽습니다.
fruits = ['사과', '배', '감', '귤']
for fruit in fruits:
print(fruit)
# - `for`문 - enumerate, break
# - **[코드스니펫] - 나이 출력하기**
fruits = ['사과', '배', '감', '귤', '귤', '수박', '참외', '감자', '배', '홍시', '참외', '오렌지']
for i, fruit in enumerate(fruits):
print(i, fruit)
# 예를 들어 앞에 5개만 출력해보고 싶다면?
for i, fruit in enumerate(fruits):
print(i, fruit)
if i == 4:
break
# 파이썬 기초문법 강의 1-8
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-8 | Q 반복문⭐️⭐️⭐️⭐️⭐️️')
# Q. 리스트에서 짝수만 출력하는 함수 만들기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
for num in num_list:
if num % 2 == 0:
print(num)
# Q. 리스트에서 짝수의 개수를 출력하기
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
count = 0
for num in num_list:
if num % 2 == 0:
count += 1
print(count)
# Q. 리스트 안에 있는 모든 숫자 더하기
result = 0
for num in num_list:
result += num
print(result)
print(sum(a_list))
# Q. 리스트 안에 있는 자연수 중 가장 큰 숫자 구하기
max_value = 0
for num in num_list:
if num > max_value:
max_value = num
print(max_value)
print(max(a_list))
# 파이썬 기초문법 강의 1-9
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-9 | 함수⭐️⭐️⭐️⭐️⭐️️')
# 함수는 반복적으로 사용하는 코드들에 이름을 붙여놓은 것입니다
def hello():
print("안녕!")
print("또 만나요!")
hello()
hello()
# 조건문에 넣을 값을 바꿔가면서 결과를 확인할 때 쓰면 편합니다.
def bus_rate(age):
if age > 65:
print("무료로 이용하세요")
elif age > 20:
print("성인입니다.")
else:
print("청소년입니다")
bus_rate(27)
bus_rate(10)
bus_rate(72)
# 단순한 출력 뿐만 아니라 결과 값을 돌려주도록 함수를 만들 수도 있어요!
def bus_rate(age):
if age > 65:
return 0
elif age > 20:
return 1200
else:
return 800
m = bus_rate(40)
print(m)
# Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기 - split | 짝홀수 | if,else
print('Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기')
def check_gender(pin):
a = int(pin.split('-')[1][0])
if a % 2 == 0:
print('여성')
else:
print('남성')
my_pin = '200101-3012345'
check_gender(my_pin)
# Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기 v2 - split | 짝홀수 | if,else
print('Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기 v2')
def check_gender(num):
b = num.split('-')[1][:1]
if int(b) % 2 == 0:
print('여성')
else:
print('남성')
my_num = '200101-3012345'
check_gender(my_num)
# 파이썬 기초문법 강의 1-11
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-11 | 튜플⭐️⭐️⭐️⭐️⭐️️')
# 불변형이다. 예를 들어
a = ['사과','바나나','배']
a[1] = '수박'
print(a)
# 위에서 배운 대로는 바나나가 수박이 될수 있으나, 튜플은 바나나가 수박이 될 수 없다. 에러뜸
a = ('사과','바나나','배')
a[1] = '수박'
print(a[0])
# 파이썬 기초문법 강의 1-11
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-11 | 집합⭐️⭐️⭐️⭐️⭐️️')
# 집합은 말 그대로 '집합'을 구현하는 방법! 좋은점: 중복이 제거됩니다.
a = [1,2,3,4,5,3,4,2,1,2,4,2,3,1,4,1,5,1]
a_set = set(a)
print(a_set)
# 교집합 / 합집합 / 차집합도 구할 수 있어요
a = ['사과','감','수박','참외','딸기']
b = ['사과','멜론','청포도','토마토','참외']
a_set = set(a)
b_set = set(b)
print(a & b) #(a_set & b_set) # 교집합
print(a | b) #(a_set | b_set) # 합집합
print(a - b) #(a_set - b_set) # 차집합
# 파이썬 기초문법 강의 1-12
print('⭐️⭐️⭐️⭐️⭐️파이썬 기초문법 강의 1-12 | f-string⭐️⭐️⭐️⭐️⭐️️')
scores = [
{'name':'영수','score':70},
{'name':'영희','score':65},
{'name':'기찬','score':75},
{'name':'희수','score':23},
{'name':'서경','score':99},
{'name':'미주','score':100},
{'name':'병태','score':32}
]
for s in scores:
name = s['name']
score = str(s['score']) # score - s['score'] 셈셈
# print(name,score)
#print('영수의 점수는 100점입니다.') #영수 대신 네임 100 말고 스코어
print(name+'의 점수는 '+score+'점입니다.') # 스코어는 숫자로 int 문자로 str # score 말고 그냥 str+(score)+ 해도됨
print(f'{name}의 점수는 {score}점입니다.')
일단 .. 지저분해보여서 ..파트별로 다시 올릴까 생각한당.
반응형
'STUDY > Python' 카테고리의 다른 글
변수, list, for문, range | 거북이반 | 파이썬 강의 | 🐢 스파르타코딩클럽X고용노동부 (0) | 2022.04.28 |
---|---|
전기 요금 계산기 | 제어문 | 아침 스터디 20분 | 스파르타코딩클럽X고용노동부 (0) | 2022.04.28 |
개강 둘째주에 오픈 된 강의들 ^^ | 내일배움캠프 | 스파르타코딩클럽X고용노동부 (0) | 2022.04.26 |
Pygame-prac | Creating a Shooting Game | 이수안컴퓨터연구소 (0) | 2022.04.26 |
프로젝트 발제 | 파이썬 게임 | 4월25일 - 4월28일 (0) | 2022.04.25 |