Ssa!

파이썬 실강 2일차! 본문

언어/python

파이썬 실강 2일차!

Ssa! 2022. 9. 6. 13:27

아래의 내용은 잘 생각이 나지않는 것만 작성한다

1. 자료형 활용하기

  • 사칙연산
    2 ** 10 -> 2의 10승은 외워두는 것이 좋다(1024)
    제곱을 공부하다가 비트와도 관련되어 있다는 것을 알았다. 
    1. 스타크래프트에 간혹가다 255, 65535를 잘보게 되는데 그 값을 넘어가면 오버플로우가 발생한다.
    2. 유튜브 싸이의 강남스타일이 21억 조회수를 찍었을 때 음수로 값이 나와 922경으로 늘렸다는 기사가 있다
    3. ipv4가 할당이 다 되어버려 ipv6로 바뀌었다
    https://www.joongang.co.kr/article/16601698#home
    x / y -> int와 int를 나누더라도 연산 결과는 항상 float이 나온다
    x //y  -> 나머지 없이 나누기, 어떤 값을 나누더라도 항상 정수로 떨어진다
    x%y -> 나머지를 구하는 연산
  • string
    string도 반복문을 돌려 뽑아낼 수 있다.
new = "Hello world"
for i in range(0, 11):
    print(new[i])

 

  • fstring
    알아야 하는 이유?
    ->파이썬의 옛 버전도 쓸 줄 알아야 한다. 왜냐?? 규모가 큰 회사는 종종 파이썬 최선버전으로 업데이트를 못해 전 버전의 문법도 알아야한다!
n1 = 5
n2 = 10

print("n1 : %s, n2 : %s, sum : %s" % (n1, n2, n1+n2)) # old Style

print("n1 : {}, n2 : {}, sum : {}".format(n1, n2, n1+n2)) # ~ python < 3.6

print(f"n1 : {n1}, n2 : {n2}, sum : {n1+n2}") # ~ python >= 3.6


# float의 소수점을 원하는 자리까지 출력할 수도 있습니다.
PIE = 3.14159265358979

print(f"pie : {PIE}")     # pie : 3.14159265358979
print(f"pie : {PIE:.2f}") # pie : 3.14

 

  • list(dict과 list를 가장 많이 쓴다)
    list안에 여러 자료형을 넣을 수 있는데 list와 dictionary를 많이쓴다(통일된 구조로)
numbers = [1, 2, 3, 4, 5]
numbers.remove(1) # 해당 요소 삭제
last_num = numbers.pop() # list에 마지막 요소 삭제 후 변수에 할당
numbers[::-1] # 리스트를 역순으로 보여줌
numbers.reverse() # 이것도 리스트를 역순으로 보여줌
numbers.reversed() # 순서가 거꾸로 뒤집힌 리스트를 반환한다!
  • dictionary (엄청 중요함!!!!!!!!!!!)
    set과 비슷한 { }이지만 dictionary는  key, value가 있으면 dictionary, 없으면 set
products = {
    "bread: 1000,
    "milk": 3000,
    "egg": 6000
}

products.get("drink", 0) # drink를 썼을 때 0을 반환해준다. 
del(products["bread"]) # 키 값을 지운다!

2. 자료형 변환

  • list -> tuple -> set
    특정 값의 자료형을 조건이 맞을 경우 자유롭게 변환할 수 있다.
sample_list = [1,2,3,4,5]
sample_tuple = tuple(sample_list)
sample_set = set(sample_list)
  • any -> string
number = 10
number_list = [1,2,3]
sample_dic = {"key":"value}
flag = True
print(str(number))
print(str(number_list))
print(str(sample_dic))
print(str(flag))

3. 함수

최대한 로직을 짤 때 함수 내에서 짜는 것을 추천한다!!

#함수를 선언할 때에는 인자를 받고, 원하는 로직을 수행한 후 결과를 리턴해줄 수 있다.
def multiply(a, b):
    return a * b

def main():
    num1 = 5
    num2 = 10
    result = mutiply(num1, num2)
    print(result)

main()

4. 다른 파일에 있는 코드 import해서 사용하기

폴더구조

| a.py
| main.py
|- folder
| |-b.py
| |-c.py

import " 파일명"을 사용해 다른 파일에 선언된 코드를 가져와서 사용할 수 있다. 

#a.py
def a_funtion():
    print("excete a")
    
#main.py
import a #a 파일들 import
a.a_funtion() #a 파일의 a_function()사용

from을 사용하면 더 다양한 방법으로 파일을 import할 수 있다.

#a.py
def a_funtion():
    print("excete a")
    
#main.py / case 1
from a omport a_funtion
a_funtion()

#main.py / case 2
from a import * # a 파일에 있는 모든 함수를 import
a_funtion()

다른 폴더에 있는 파일 import 하기

# case 1
from folder import b

b.b_funtion()
# case 2
from folder.b import *

b_funtion()

변수 import해서 사용하기

# 다른 파일의 변수 또한 함수와 동일한 방법으로 from / import를 사용할 수 있습니다.
# folder/b.py
PIE = 3.14
HELLO = "world"

# main.py / case 1
from folder.b import * # *권장X* 존재하는 모든 변수 import
#그 변수가 어디있는 것인지 판단이 어려워서 권장하지 않음
#디버깅, 관리를 할 때 별로 안좋다

print(PIE) # 3.14
print(HELLO) # "world"

# main.py / case 2
from folder.b import PIE, HELLO # 사용 할 변수를 각각 import

print(PIE) # 3.14
print(HELLO) # "world"

# main.py / case 3
from folder import b # *권장O* b 파일 import
#파일 자체를 import하는 것을 권장한다! 혼동이 생길 이유가 없어진다!
#다른 라이브러리를 쓸 때 공식 문서를 찾아서 권장하는 방식을 import를 사용하면 된다!

print(b.PIE) # 3.14
print(b.HELLO) # world

#그 파일을 나만의 설정하고 싶은 별칭으로 바꾼다 (as)
from folder import b as b_python_file

 

5. 값 비교하기

#in :특정 값이 list/tuple/set에 포함되어 있는지 확인 (많이 쓰인다!)
4 in [1, 2, 3] # False
1 in [1, 2, 3] #True

6. 조건문

elif에 not을 쓸 수 있다는 것이 새로웠다 (not은 bool의 속성이다!)

if condition: # 조건이 True일 경우
    # some code

# not 키워드를 사용할 경우 조건이 False일 때 실행됩니다.
elif not condition: # 조건이 False일 경우
    # some code

else: # 위 조건들 중 만족하는게 없을 경우
    # some code

비어있는 string, list 등은 분기문에서 False로 판단한다.

empty_string = ""
empty_list = []

if not empty_string:
    print("string is empty!!")

if not empty_list:
    print("list is empty!!")

 

느낀점 

오늘 강의를 들으면서 강사님이 공부방법을 제대로 알려주셨다 예제를 한번 씩 다 보고 직접 써보기인데 자기가 직접 해봐야 실력이 늘어난다고. . . 파이썬 복습할 때 만들어주신 예제를 직접 다 만들어보고 작동해보고 해결하는 과정을 겪어봐야겠다

 

 

 

'언어 > python' 카테고리의 다른 글

파이썬 계산기 튜터님이 하신 것!!!  (0) 2022.09.07
파이썬 계산기 과제  (0) 2022.09.07
파이썬 실강 3일차!  (0) 2022.09.07
파이썬 실강 1일차!  (0) 2022.09.05
파이썬 스타일 가이드! PEP 8  (0) 2022.09.05