반응형

Python/Python 기초 12

[Python] 파이썬 코딩 스타일

PEP 8 https://peps.python.org/pep-0008/ 구글 파이썬 스타일 가이드 https://google.github.io/styleguide/pyguide.html Naming Conventions Type Public Internal 패키지 lower_with_under 모듈 lower_with_under _lower_with_under 클래스 CapWords _CapWords 예외 CapWords 함수 lower_with_under() _lower_with_under() 글로벌/클래스 상수 CAPS_WITH_UNDER _CAPS_WITH_UNDER 글로벌/클래스 변수 lower_with_under _lower_with_under 인스턴스 변수 lower_with_under _lo..

[Python] 파이썬 문법 기초

Intent 파이썬 공식 가이드인 PEP 8(https://peps.python.org/pep-0008/)에 따라 공백 4칸을 원칙으로 한다. PEP(Python Enhancement Proposals) 프로세스 https://peps.python.org/ 새로운 기능을 제안하고 커뮤니티의 의견을 수렴하여 파이썬의 디자인 결정을 문서화하는 파이썬의 주요 개발 프로세스 Naming Convention 변수명과 함수명은 snake case를 따른다. camelCase PascalCase snake_case Camel Case camel(낙타)에서 유래해 부른 이름이며 단어를 대소문자로 구분하여 섞어서 작명하는 방식이다. 자바의 대표적인 표기 방식이기도 하다. Pascal Case 첫 시작 문자도 대모자로 표..

Dynamic Typing vs Static Typing

Dynamic Typing 동적 타이핑은 코드를 작성하는데 있어서 컴퓨터적 구조를 생략한다. 따라서 변수를 지정할 때 해당 변수의 데이터 타입 등을 명시하지 않아도 컴퓨터가 알아서 해석하도록 둔다. 파이썬에서 a = 15 라는 식으로 변수를 지정할 때 a가 숫자라고 명시 하지 않더라도 컴퓨터는 이를 스스로 숫자라 해석한다. 이러한 방식은 코드를 보다 간결하게 해주며 코드의 로직을 보다 명확히 보여줄 수 있지만, 데이터 타입이 뭔지 파악하는 것을 컴퓨터에게 맡기기 때문에 그 만큼 실행 속도가 느려진다는 단점이 있다. 코드를 작성하는 시간이 빠르다. 코드를 실행하는 속도가 느리다. 코드의 내용, 로직을 파악하기 쉽다. 처음 프로그래밍을 학습하는 사람에게 적합한 언어이다. 속도를 중요시하는 작업에선 사용하기 ..

Object Reference

자료형과 참조 변수 C Python 변수 중심 객체 중심 int a, b; a = 100; b - a; a = 100 b = a a = 300 미리 생성해 둔 객체 -5 ~ 256의 정수객체는 미리 생성 a = 100 b = a a = 300 print(id(100)) print(id(a)) print(id(300)) print(id(b)) >> 140732971160336 2307158257328 2307158257328 140732971160336 리스트의 구성요소 C Python 배열 원소의 크기는 int형으로 고정 리스트의 항목은 서로 다른 자료형도 가능 리스트의 요소 a[0], a[1], a[2]는 참조형 int a[3] = {100, 200, 300} a = [100, "two hundred"..

[Python] Python Module

Module 함수나 변수, 클래스 등을 가진 파일(.py) 모듈 안에는 함수, 클래스 또는 변수들이 정의되어 있음 파이썬은 많은 표준 라이브러리 모듈을 제공 Package 모듈을 효율적으로 관리하기 위한 모듈의 상위 개념 공동 작업이나 코드의 유지 보수 등에 유리 import 패키지.모듈 import 패키지.모듈.변수 import 패키지.모듈.함수 import 패키지.모듈.클래스 from 패키지.모듈 import 변수/함수/클래스 Google Python Style Guide google.github.io/styleguide/pyguide.html styleguide Style guides for Google-originated open-source projects google.github.io Impo..

[Python] Python Class

Class 클래스(Class): 객체를 만드는 구조/틀 객체(Object) 객체 = 속성(attribute) + 기능(method) 객체 = 변수 + 함수 Class Variable 클래스와 인스턴스 전체가 공유하는 변수 Class Method 클래스와 인스턴스 전체가 공유하는 함수 인스턴스(Instance) 클래스가 실질적으로 실체화될 때(메모리에 할당되어 사용될 때) 그 객체를 부르는 용어 클래스 선언 클래스 호출을 통한 객체 할당 # Class 선언 class MyClass(): class_var = '클래스 변수' def __init__(self, v1, v2): self.v1 = v1 self.v2 = v2 @classmethod def class_method(cls): print("클래스의 메..

[Python] Python File

Python 출력 print() print(출력대상1, 출력대상2, ..., sep='-', end='-') python 표준 출력 함수 sep: 출력 시 출력 대상들의 사이에 구분자를 삽입(기본값: 공백) end: 마지막 문자열을 출력하고 이어서 출력할 문자 기술(기본값 : 줄바꿈 문자) file: 출력 위치를 변경(기본값: sys.stdout(표준 출력 장치, 모니터)) flush: 스트림을 강제적으로 flush할지를 지정(기본값: False) print("일","이",1,2) print("일","이",1,2,sep='-') print("첫번째", end='---->') print("두번째") >> 일 이 1 2 일-이-1-2 첫번째---->두번째 with file("test.txt", "w") as..

[Python] Python Function

함수 정의 def 함수이름(매개변수): 함수의 내용 return 반환값 함수이름: 사용자가 정의하는 함수이름, 기존에 사용되는 함수나 예약어들을 제외하고 사용 매개변수: 함수 안에서 사용 할 변수들 (생략 가능) return: 함수 안에서 모든 연산을 마친 후 반환할 값 (생략 가능) 반환값을 정의하지 않으면 자동으로 None 을 반환 precedure: 아무런 값을 반환하지 않는 함수 함수의 매개변수 positional argument, keyword argument 초기 값 없는 변수, 초기값 있는 변수 순으로 배치 함수의 매개 변수가 몇 개가 필요한지 모를 때 Inside a function header: * collects all the positional arguments in a tuple. ..

[Python] Python Flow Control

Flow Control 프로그래밍은 입력, 처리, 출력 등의 과정을 순차적으로 수행하는 프로그램을 작성하는 과정을 의미 특정한 조건에 맞는 경우에만 처리를 수행하거나, 반복적인 작업이 필요할 경우 프로그램의 흐름을 제어할 수 있음 Conditionional Statement if / elif / else condition(True/False) : 조건의 참/거짓을 이용하여 작업 흐름 제어 비교 연산자: > 2 4 6 8 # 20 이하의 자연수 중 3으로 나눴을 때 나머지가 1인 숫자 출력하기 for x in range(1, 21): if x % 3 == 1: print(x) >> 1 4 7 10 13 16 19 """ 다음과 같이 출력하기 * ** *** **** ***** """ for i in ran..

[Python] Programming Basic

Computational Thinking 분해(decomposition) 문제를 잘게 나눠서, 문제를 작고 다룰 수 있는 부분으로 나누기 일을 할 때 어떻게 나눠서 할지 생각하는것 패턴 인식(pattern recognition) 데이터 안에 있는 패턴과 규칙을 찾기 부분과 부분의 유사점과 차이점을 찾는 것 패턴 만들기(추상화) (abstraction) 패턴을 만드는 일반적인 규칙을 발견하는 것 알고리즘 (algorithm) 문제를 풀기 위한 명령을 순서대로 만드는 것 Programming 프로그래밍(programming) 하나 이상의 관련된 추상 알고리즘을 특정한 프로그래밍 언어를 이용해 구체적인 컴퓨터 프로그램으로 구현하는 기술 특정한 프로그래밍 언어로 쓰인 프로그램은 기계어로 번역되어 컴퓨터에 의해 ..

728x90
반응형