파이썬 26

파이썬 - (7) 클래스와 객체

지역 변수 함수의 파라미터 포함, 함수 내에서 지정된 변수이다. 함수 바깥으로가면 사라진다. 위의 함수를 시행하고 return을 저장하지 않은 상태에서 print를 하게되면 모두 지역 변수이기에 에러가 발생하게 된다. 전역 변수 함수 바깥에서 정의되는 변수를 전역변수라고 한다. 전역 변수는 함수 내부에서 사용할 수 있다. ​ 지역 변수를 활용하는 것이 코드의 안정성과 메모리 측면에서 도움이 된다. 추가로 global 예약어를 사용해서 함수 내에서 전역 변수로 변수를 assign할 수 있다. 클래스 클래스는 객체의 메소드와 속성을 정의한다. __init__은 생성자로 클래스가 만들어질 때 자동으로 호출되는 함수이다. 위의 경우 self라는 객체에 name, wheel_number, color가 설정된다. ..

대학교 2023.11.24

파이썬 - (6) 여러 가지 자료형

집합 집합은 중복되는 요소를 모두 제거한 형태의 자료형이다. 기본적으로 {}를 통해서 생성하며, 빈 집합은 set()을 통해서 생성이 가능하다.ㄴ ​ 집합은 순서가 없기에 인덱스를 사용해 호출이 불가능하다. 그래서 for를 통해 순회하여 값을 얻을 수 있다. 집합의 메소드는 대표적으로 아래와 같다. 딕셔너리 key와 value로 매칭되어져 있는 데이터이다. key값은 중복을 허용하지 않는다. key를 통해서 value를 호출할 수 있다. 또한 majors["새로운 key"]=value를 통해서 새로운 값을 추가할 수도 있다. 딕셔너리의 대표적인 메소드는 아래와 같다. 딕셔너리 또한 for문을 사용해 순회할 수 있다. 지금까지 리스트, 집합, 딕셔너리를 배웠다. 리스트는 객체의 순서를 고려하여 관리할 때,..

대학교 2023.11.15

파이썬 - (5) 여러 가지 자료형

리스트 파이썬의 대표적인 컨테이너형 자료구조이다. ​ 쉼표로 구분 지은 값에 대괄호를 친다. 1. 리스트 요소 호출은 인덱스를 통해 호출할 수 있다. 2. 음수 인덱스는 리스트의 끝에서부터 시작한다. 3. len()을 통해 리스트의 길이를 알 수 있다. 4. 리스트는 여러 타입의 객체를 포함할 수 있다. List = ["a", 1, 2] List[0] #"a" List[-1] #2 len(List) #3 리스트는 가변적이기에 요소를 바꾸거나 추가할 수 있다. 하지만 가변적이므로 하나의 이름으로 객체를 수정했을 시, 다른 이름으로 가리키는 객체도 수정된다. 즉 왼쪽의 경우 list2가 list1로 초기화했기에 list2에 추가한 "D"값이 list1에도 똑같이 추가되어 같은 값을 가지는 경우이다. ​ 리스..

대학교 2023.11.06

파이썬 - (4) 튜플, 함수

튜플 다른 타입의 객체를 포함하는 객체 연속적으로 나열된 객체를 표현한다. EX) A=(1,2,3) A=1,2,3 A=(1,2,True) 튜플 활용 from cs1media import * yellow = (255, 255, 0) img = load_picture("./cs101_students.jpg") img.show() img.set(29, 30, yellow) img.set(30, 30, yellow) img.set(31, 30, yellow) img.set(30, 29, yellow) img.set(30, 31, yellow) w, h = img.size() for i in range(w): img.set(i, h/5, yellow) img.set(i, h/5-1, yellow) img.set(..

대학교 2023.10.15

파이썬 - (3) 객체와 메서드

객체, 메서드 정수, 소수, 문자열, 행렬 등 파이썬의 모든 데이터는 특정 타입의 객체이다. 객체의 타입은 객체를 생성한 클래스에 따라 다르다. 예시로 int, float, complex, bool 등이 있다. 각 객체는 타입과 별개로, 이름을 가질 수 있다. 또한 새로운 객체를 지정하면 기존에 지정 되어있던 객체는 사라진다. ​ 메서드는 "객체이름.메서드이름()" 형태로 사용한다. 특정 행위를 포함하고 있다. ​ 실습 문제 1번 정답 코드 : from cs1robots import* import time load_world("./worlds/harvest4.wld") hubo = Robot() hubo.move() cnt=0 number=0 def turn_right(): hubo.turn_left()..

대학교 2023.10.07

파이썬 - (2) 함수 실습

함수 실습 실습 1 저번에 배웠던 휴보라는 로봇을 이용해 4가지 실습을 진행했다. 파이썬 hubo라는 키워드를 통해 정보를 얻을 수 있다. 이 포스팅에서 실습 1번과 3번을 다루려고 한다. 첫 번째는 지그재그 방식으로 (1,1)에서 (10,1)까지 이동하는 것이다. #제공받은 코드 from cs1robots import* #Task1 create_world() hubo = Robot() #이동한 위치 파란색으로 기록 hubo.set_trace("blue") #왼쪽으로 방향 전환 hubo.turn_left() #오른쪽으로 방향 전환 def turn_right(): hubo.turn_left() hubo.turn_left() hubo.turn_left() #위로 지그재그 def zigzag(): for _ ..

대학교 2023.09.19

파이썬 - (1) 개요

목차 주차별 계획은 이렇게 진행된다. 최근에 수업을 들어본 결과 수업 진행 방법이 신기했다. 이미 만들어진 코드들을 import해서 함수가 동작하는 방식을 직접 배우는 방법인데, 파이썬을 처음 접한 사람이라면 굉장히 이해하는데 어려울 것 같다. 나는 그나마 파이썬을 알고 있어서, 동작 순서와 방식은 이해가 되지만, 그 함수들의 코드 하나, 하나는 다 이해하지 못할 정도이다. 함수 함수, 프로시저 등 다양한 이름으로 활용된다. 함수는 파이썬에서 def를 통해서 정의할 수 있다. 함수 안에 다른 함수가 들어갈 수 있다. ​ 파이썬의 정수, 소수, 문자열 등 모든 것은 객체이다. 객체는 각자 할 수 있는 동작과, 고유의 속성을 가진다. ​ 파이썬은 한번 클래스를 만들면 그 클래스에 속하는 서로 다른 객체를 만..

대학교 2023.09.13

데이터 분석 - 파이썬으로 그래프 만들기(seaborn)

1. seaborn 설치 pip3 install seaborn 2. 산점도 - 변수 간 관계 표현하기 소스 코드 (기본 차트) import pandas as pd mpg=pd.read_csv('mpg.csv') import seaborn as sns sns.scatterplot(data=mpg, x='displ', y='hwy') 결과 사진 ​ 소스 코드(축 범위 설정) import pandas as pd mpg=pd.read_csv('mpg.csv') import seaborn as sns sns.scatterplot(data=mpg, x='displ', y='hwy').set(xlim=(3,6), ylim=(10,30)) 결과 사진 ​ 소스 코드(표식 색깔 변경) import pandas as pd ..

[Python] 데이터 분석 기초(pandas, numpy, 파생변수)

1. 기초 지식 - 데이터 프레임 : 행과 열로 구성된 사각형 모양의 표 - 열 ​: 컬럼 또는 변수라고 부른다. (가로) - 행 : 로 또는 케이스라고 부른다. (세로) ​ 행이 반드시 사람이어야 하는 건 아니다. 하나의 단위가 하나의 행이 된다. 데이터가 크다는 뜻은 행이 많다 또는 열이 많다 라는 뜻이다. ​ 행이 많다 -> 컴퓨터가 느려짐 -> 고사양 장비 구축 열이 많다 -> 분석 방법의 한계 -> 고급 분석 방법 빅데이터 보다는 다양한 변수가 담겨 있는 다양한 데이터가 더 중요하다. 2. pandas 및 데이터프레임 기초 - head() : 앞부분 출력(기본 5) - tail() : 뒷부분 출력(기본 5) - shape : 행, 열 개수 출력 - info() : 변수 속성 출력 - descri..

[Python] 아나콘다 설치 및 파이썬, JupyterLab 이용하기

1.아나콘다란? 패키지 관리와 디플로이를 단순하게 할 목적으로 과학계산을 위한 파이썬과 R 프로그래밍 언어의 자유-오픈 소스 배포판이다. 2. 아나콘다 설치하기 Anaconda | Anaconda Distribution Anaconda's open-source Distribution is the easiest way to perform Python/R data science and machine learning on a single machine. www.anaconda.com 해당 링크에 들어가서 각각 체계에 맞게 설치하면 된다. 이후 next->I agree-> Install 순으로 설치 후 마지막 Finish 과정에서 체크를 모두 해제하고 Finish 버튼을 누르면 된다. 3. JupyterLab ..