본문 바로가기
  • 내 손안 세상 보기 니 해피
IT

python 맛보기

by 니해피 2024. 5. 29.
반응형

Python은 2010부터 꾸준히 사용이 증가하여 자바 언어보다 많이 사용되고 있다. 사용 증가 이유는 머신러닝 시스템관리 애플리케이션 웹개발 데이터 과학분야에서 폭넓게 사용되고 있기 때문이다. 파이썬은 C언어로 구현되어 있는데 현재 3.0 릴리즈 타임라인이 업데이트 사용되고 있다.

 

강점은 repl (read evaluate print loop)대화형 인터렉티브 톱레벨 랭귀지셀 입력을 평가하고 결과를 사용자에게 반환시키는 단순한 프로그래밍 환경이다.

 

repl 빠져나오기 → windows : ctrl+z/ Linux and mac : ctrl+d

 

가장 강한 강점은 많은 표준 라이브러리(https://bit.ly/2qSRLty)를 제공하는데 있다.

파이 센 코드 스타일 가이드라인 PEP8(http://bit.ly/1ARqSBt)을 참조 개발하되, 파이슨 원칙 import this로 PEP20을 확인한 후 코딩하면 도움이 된다.

 

파이슨 장점은 공백사용으로 가독성이 높은 읽기 쉬운 코드를 만든다.

 

 

 

파이슨 공백사용 규칙

  • 4공백 사용한다
  • 공백탭 혼용하지 않는다
  • 동일한 들여 쓰기 단계에서 연속되는 코드행은 동일한 블록으로 간주 도니다
  • 예외에 대해서는 다른 방법으로 가독성을 개선해야 한다.

파이썬은 https://www.python.org/에서 다운로드 받는다. 마지막 버전은 python3.7.1이다.

개발환경구축 https://www.anaconda.com/download/ 후 jupyter notebook실행하라

 

파이슨 모둘 불러오기 : import math

 

가장 세분화된 모듈화 기능은 재사용가능한 함수 정의이다.

모듈은 다른 모듈에서 사용할 수 있으며, 모듈을 가져오거나 실행할 때 정확하게 이해하는 것이 중요하다

 

파이슨 런타임 시스템은 몇가지 특수 변수와 속성을 정의한다.

_name_ 변수 : 모듈이 스크립트로 설정되었거나 다른 모듈 또는 REPL로 가져왔는지 여부를 감지할 수 있는 수단을 제공한다.

파이스코드주석 : # 해시기호로 시작하여 줄 끝까지

파이슨 네임 Scopes : LEGB(Local, Enclosing, Global, Built-in)

 

ㅁ 자료구조 &제어구문 : 형태 기본

ㅁ iterable

ㅁ 클래스 : 기본 내용 정의하고 메서드 개체속성 인스턴트를 다룬다.

ㅁ 내장함수활용 : 기본예제

 

위 내용은 인강 메모이다.

 

파이선 기초 인강중 무엇이 무엇인지 전혀 알아듣지를 못하여 계속해서 강의를 들어야 할지 망설여지는 가운데 AI에게 질문을 하였다. 파이슨에 대해서 설명과 함께 초보자가 배울 수 있는 영역인지 말이다.

 

답은 아래와 같다.

 

새나무잎
새순이나고있는나무

 

Python 개요

 

python은 강력하고 사용하기 쉬운 높은 수준의 프로그래밍언어 이다. 1991년 네덜란드의 Guido van Rossum에 의해서 처음 발표되었으며 웹개발 데이터과학 인공지능 자동화 및 스크립트등 다양한 분야에서 사용되고 있다고 하면서 다음과 같은 특징이 있다고 하였다.

 

1. 일기 쉬운 문법

읽고 이해하기 쉬운 문법을 가지고 있어 초보자도 빠르게 배울수 있다. 코드가 간결하고 명확하여 유지 보수도 용이하다.

# 간단한 Python 예제
def greet(name):
    return f"Hello, {name}!"

print(greet("World"))
# 변수 선언과 출력
name = "Alice"
print(f"Hello, {name}!")

 

2. 풍부한 라이브러리

표준라이버리가 매우 방대하며 외부에서도 다양한 서드파티 라이브러리를 사용할 수 있다. 예를 들어 데이터 분석을 위한 pandas, 과학계산을 위한 numpy, 웹 개발을 위한 Django 등이 있다.

 

3. 인터프리터 언어

인터프리터언어로 코드가 한줄 씩 실행되어 개발 과정에서 빠르게 테스트하고 디버깅할 수 있다.

인터렉티브 모드의 지원은 초보자가 코드를 실습하면서 이해하는데 유용하다.

 

4. 플랫폼 독립적

운영체계가 독립적이어서 Winwows, macOS, Linux등 다양한 플랫폼에서 동일한 코드가 실행된다.

 

5. 객체 지향 및 함수형 프로그래밍 지원

객체지향 프로그래밍oop를 지원 및 함수형 프로그래밍 패러다임도 지원하여 다양한 프로그래밍 스타일 활용이 가능하다.

 

6. 커뮤니티와 지원

문제해결에 필요한 자료나 도움을 쉽게 구할 수 있는 활발한 커뮤니티가 있다.공식문서도 매우 잘 정리되어 있고 다양한 온라인 강좌와 튜토리얼이 존재한다.

초보자가 공부하면서 마주하는 문제에 대한 답변을 인터넷에서 쉽게 구할 수 있다.

Jupyter Notebook과 같은 도구를 사용하면 코드 실행하면서 바로 결과를 확인할 수 있어 학습에 큰 도움이 된다.

 

7. 동적 타이핑

다이나믹 타이핑을 지원하여 변수의 데이터 타입을 명시적으로 선언할 필요가 없다. 이는 개발을 빠르게 진행할 수 있게 돕는다.

 

설치가 간단하고 기본적인 텍스트 에디터나 통합 개발 환경(IDE)을 통해 쉽게 코드를 작성하고 실행이 가능하다.

 

 

 

# 두 수를 입력받아 합을 출력하는 프로그램

# 사용자로부터 입력받기
num1 = int(input("첫 번째 숫자를 입력하세요: "))
num2 = int(input("두 번째 숫자를 입력하세요: "))

# 합계 계산
sum = num1 + num2

# 결과 출력
print(f"두 수의 합은 {sum}입니다.")

 

이와 같은 특징덕분으로 개발자 사이에서 인기가 있으며 여러 프로젝트에서 사용된다고 한다. 배우기 쉽고, 강력한 기능을 제공하여 초보자와 숙련된 개발자 모두에게 적합한 언어라고 알려준다.

 

 

반응형

댓글