Python/수업

파이썬 문법 심화 1주차 1_Sparta Coding Club

끈끈 2023. 3. 21. 12:29
가상 환경(virtual environment)

 

파이썬에서는 pip라는 패키지 인스톨러를 사용해 패키지들을 설치하고 관리함

2개 이상의 프로젝트를 개발하게 될 경우 버전 등 호환성 문제가 발생할 수 있음

python 가상 환경을 활용해 각 프로젝트마다 독립적인 환경을 구성하여 호환성 문제를 최소화시킨다

프로젝트 시작 전에 기본으로 설정해줘야 함

 

python -m venv venv 👉 venv 폴더가 생성됨

(오른쪽 Yes : 다시 열어도 가상환경 안에 있는다)

venv\Scripts\activate 👉 venv가 실행됨 👉 (venv)

(반대는 deactivate)

(입력할 때는 Tap을 누르면 자동완성이 됨)

pip install requests 👉 requests라는 모듈을 pip를 사용하여 설치하는 것

(venv의 Lib 폴더에 설치됨)

 

코드 컨벤션

 

프로그래밍 언어에는 각 언어에 맞는 코드 컨벤션이 있다

개발하는데 문제는 없지만 가독성이 좋고 일관되게 하기 위함이다

파이썬은 PEP-8이라는 컨벤션 가이드를 제공하고 있다

https://peps.python.org/pep-0008/

 

PEP 8 – Style Guide for Python Code | peps.python.org

PEP 8 – Style Guide for Python Code Author: Guido van Rossum , Barry Warsaw , Nick Coghlan Status: Active Type: Process Created: 05-Jul-2001 Post-History: 05-Jul-2001, 01-Aug-2013 Table of Contents This document gives coding conventions for the Python co

peps.python.org

[Settings] - [python formatting] - [Provider] - autopep8

[Settings] - [format on save] - Check

 

변수/함수 네이밍은 Snake 표기법(각 단어를 언더바로 구분)

Class 네이밍은 Pascal 표기법(각 단어를 대문자로 구분)

(Camel은 첫 문자가 소문자(Lower camel case) 또는 대문자(Upper camel case)로 시작한다는 차이)

hello_world = "123"
def hello_world()
class HelloWorld()

상수는 모든 알파벳을 대문자로 적는다(길다면 언더바)

리스트를 표기할 때는 복수로 표현한다

 

변수 유효 범위(variable scope)

 

변수가 선언된 위치나 키워드에 따라 변수를 사용할 수 있는 범위가 달라진다

지역 변수(local variable) : 함수 내에서 선언

전역 변수(global variable) : 함수 밖에서 선언, 어디서든 접근 가능.

global 키워드를 사용해 지역을 전역으로 재선언 가능!

 

자주 사용하는 모듈 및 패턴

 

https://sw-ing.tistory.com/25

 

자주 사용하는 Python 함수 module

type() 값의 자료형 확인하기 integer = 10 float_ = 1.23 string = "hello world!!" list_ = [1, 2, 3] tuple_ = (1, 2, 3) set_ = {1, 2, 3} dictionary = {"key": "value"} boolean = True print(type(integer)) # print(type(float_)) # print(type(string)) # p

sw-ing.tistory.com

 

조건문 심화

 

# and, or는 여러개 사용 가능
# 괄호 사용으로 우선순위를 정해줌
if (True or False) and True and False: #조건이 True일 경우 실행
    print("Good!")
 
elif not condition: #not 키워드를 사용할 경우 조건이 False일 때 실행
    print("Pass!")

# 위 조건들 중 만족하는게 없을 경우
else:
    print("No pass!")

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

bool() 함수를 사용해 True/False 값을 확인 가능

print(bool("")) #False
print(bool(0)) #False
print(bool([])) #False
print(bool([""])) #True

print(bool("sample")) #True
print(bool([1, 2])) #True
print(bool(1)) #True
print(bool(-1)) #True

all() 👉 요소들이 모두 True일 경우 True 리턴

any() 👉 요소들 중 하나라도 True일 경우 True 리턴

 

함수의 인자와 리턴 타입

 

sorted.sort()의 차이

 

내가 사용하는 코드의 리턴 타입 확인하는 방법

 

docstring 확인하기

import한 함수를 [ctrl + click] 하여 구현 코드 확인하기

 

try / exception을 활용한 에러 처리

 

정의하지 않은 에러는 Exception이라 하지만,

남발할 경우 에러 발생 이유를 찾기 힘들어지므로 권장하지 않음

 

패킹(packing) / 언패킹(unpacking)

 

요소들을 묶거나 풀어주는 것.

list / dictionary의 값을 함수에 입력할 때 주로 사용.

변수 이름은 뭐로 하든 상관 없지만,

arguments와 keyword arguments로 통일시키는 게 권장사항!

list : 값이 비어있거나 여러개여도 상관 없고 list에 *을 붙여서 넣어줄 수 있음.

dictionary : **