프로그래밍 문법 100

구글 코랩 시작하기 (셋팅, 파일만들기)

1. 들여쓰기 설정, 다크모드 설정 처음에 기본설정으로 테마는 화이트에 들여쓰기는 2로되어있는데, 들여쓰기는 4로하는게 편하고, 고수들은 모두 ide를 검은색으로 해놓고 쓰기 때문에 우리도 검은색으로 바꾸도록 한다. (1) 오른쪽 위에 설정버튼을 누른다 (2) 편집기 탭으로 들어가서 색상은 default dark로 바꿔주고, 들여쓰기는 4로 해준다. 2. 파일만들기 (1) 파일-새노트를 누르면 새 파일이 열린다. (2) 새 파일을 만들면 구글 드라이브에 colab Notebooks라는 파일이 생기고 거기에 저장이 된다. 형식은 ipynb.

pickle라이브러리를 이용하여 객체를 파일로 저장하기

1. 라이브러리 로드 import pickle 2. 피클형식으로 데이터 저장하기 user={'dong':29,'sung':19} #데이터 저장하기 # =>user.pickle라는 파일로 저장이 된다 with open('user.pickle','wb') as fw: pickle.dump(user, fw) 3. 피클형식의 데이터 파일 불러오기 # load data # =>user_loaded라는 변수에 저장이 된다 with open('user.pickle', 'rb') as fr: user_loaded = pickle.load(fr)

문자열 함수 (숫자,공백,문자 확인하기)

sen=input("문자열을 입력하시오: ") d={'digit':0, 'space':0, 'alpha':0} for i in sen: if i.isalpha(): #모두 문자이면 true d['alpha']+=1 elif i.isdigit(): #모두 숫자이면 true d['digit']+=1 else: #공백이면 true d['space']+=1 print(d) i가 문자열타입일때 i.isalpha() => i가 모두 문자이면 true i.isdigit() => i가 모두 숫자이면 true i.isspace() => i가 모두 공백이면 true

collections 패키지의 Counter함수를 이용한 빈도 확인

1. 설명 리스트를 입력했을 때 빈도를 측정해주는 함수이다. 다음과 같은 word 리스트가 있다고 하자. ['존경', '국민', '여러분', '경자년庚子年', '독립운동', '임시정부', '수립', '년', '해', '올해', '혁명', '주년', '민주화운동', '주년', '년', '전', '촛불', '민주공화국', '숭고', '정신', '정의', '안전', '평화', '행복', '나라다운', '나라', '국민', '준엄한', '명령', '우리', '정부', '과감', '변화', '선택', '경제', '사회', '구조', '근본적', '변화', '개혁', '우리', '사회', '만연한', '반칙', '특권', '청산', '불평등', '양극화', '극복', '노력'] 아래와 같은 코드를 이용하여 coun..

객체가 속해있는 클래스의 내장함수 확인하는법 dir

dir(객체) 를 하면 객체가 속해있는 클래스의 내장함수들을 확인할 수 있다. * string 클래스 a="string" print(dir(a)) ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce_..

클래스 static 변수

파이썬에선 클래스 내의 변수는 일단 static 변수로 생각하면된다. 따라서 각 객체에서 접근하면 메모리 위치가 같다. class myClass: staticValue=0 def __init__(self,x,y): self.x=x self.y=y e=myClass(10,20) f=myClass(20,30) print(id(e.staticValue)) print(id(f.staticValue)) 4548777056 4548777056 또한 변수를 수정했을때도 반영된다. ( class.staticvalue 형태로 접근한다 ) myClass.staticValue=100 print(e.staticValue) print(f.staticValue) 100 100 여기서 객체를 통해 staticValue를 수정하면,..

오버로딩과 오버라이딩

1. 오버로딩 : 이름은 같고, 매개변수의 타입과 개수만 다른 함수가 여러개 있을 때, 입력값의 형식이 맞는 함수를 적절히 찾아서 사용하는기술 * 파이썬에선 오버로딩이 불가능 하다! 같은 이름의 함수가 여러개 있으면, 가장 밑에 있는 함수가 실행됨 (덮어써지기 때문에) 2. 오버라이딩 : 부모클래스와 상속된 자식 클래스의 매소드이름이 같을 때 자식 클래스의 함수를 사용하는 것 (함수를 재정의하는 기술) # 상속 class FourCal: def __init__(self, first, second): self.first = first self.second = second def setdata(self, first, second): self.first = first self.second = second de..

파이썬으로 파일 읽기, 쓰기

파일 읽기 1. 기본 내장 함수 words = [] f = open("words.txt", 'r') while True: line = f.readline().strip("\n") if not line: break words.append(line) ''' 코드처리 ''' f.close() 2. 기본 내장 함수 (with이용) with open('경로/파일이름', 'r') as f: line = f.read() print(line) 3. 판다스(pandas) read_csv csv파일을 읽을 때 사용 import pandas as pd pd.read_csv("경로/파일이름") 파일 쓰기 1. 기본 내장 함수 f = open("경로/파일이름", 'w') for i in range(10): line = f"{i..

폴더내의 하위 파일 모두 불러오기 및 접근

하위파일 모두 불러오기 import os import pandas as pd folder="name_of_folder" #디렉토리 내에 폴더 subdir_names=os.listdir(folder) #subdir_names에 폴더내의 모든 파일이름이 들어간다 for file_name in subdir_names: csv=pd.read_csv(folder+"\\"+file_name) #하위 디렉토리 접근시 역슬러시(원화표시) 하위 파일(or 폴더)에 접근하기 # 폴더 data_path = '/gdrive/My Drive/folder' # 파일 file=os.path.join(data_path,"file") print(file) /gdrive/My Drive/folder/file

파일 불러오기 , 쓰기

1. 파일 읽어오기 (1) 내장 모듈 fileMatrix = [] with open("21.csv",'r') as file: for lineContent in file: fileMatrix.append(lineContent.strip('\n').split(",")) for lineContent in file: - file에 있는 한줄씩 lineContent에 저장 (문자열형식) ​ lineContent.strip('\n').split(",") - lineContent에 \n은 없앰 - split(",") : 리스트를 만들어서 ","를 기준으로 나누어서 한 index씩 넣음 fileMatrix = [] with open('data.csv','r',encoding='utf-8') as fileOpen: li..

데이터프레임 관련

1. 각각의 벡터를 만들고 합치는 방법 english > class class [1] 1 1 2 2 2. 바로 만드는 방법 df2_midterm df2_midterm df2_midterm english2 math2 class2 1 90 50 1 2 80 60 1 3 60 100 2 4 70 20 2 3. 데이터프레임의 속성 읽기 dataframe$col df=data.frame(var1=c(5,3,4), var2=c(2,6,1)) df$var1 > df=data.frame(var1=c(5,3,4), + var2=c(2,6,1)) > df$var1 [1] 5 3 4 4. 파생속성 만들기(속성추가하기) df=data.frame(var1=c(5,3,4), var2=c(2,6,1)) df$var_sum=df$v..