피클 (pickle) 의 표준 라이브러리는 리스트뿐만 아니라 모든 파이썬 데이터 객체를 저장하고 읽을 수 있다. dump 로 저장하고 load로 읽는다. import pickle with open('mydata.pickle', 'wb') as mysavedata : pickle.dump([1,2,'three'], mysavedata) with open('mydata.pickle', 'rb') as myrestoredata : a_list = pickle.load(myrestoredata) print(a_list) 피클 파일로 작업할 때는 이진 접근 모드로 열어야 한다(b) pickle 모듈은 PickleError 형의 예외를 발생 시킨다. import pickle try : with open('a.txt..
파이썬3의 내장 함수 70여개 정도내장함수는 __builtins__ 네임스페이스내장함수 조회dir(__builtins__) 를 입력해당 함수의 도움말은 == help(함수명) 리스트 타입인지 왁인isinstance(obj, class or tuple)isinstance(name, list) ====> trueininstance(num_name, list) ===> false print(value) len(obj) 유니코드를 사용하는 python은 한글을 1자로 인식함 list() 데이타 객체를 만드는 함수로서, 빈 리스트를 만든다. range() 필요에 따라 주어진 범위의 일련의 숫자를 생성하는 나열자를 반환한다. for num in range(4) :print(num) enumerate() 0부터 시작..
Beautiful Soup download : http://www.crummy.com/software/BeautifulSoup install : >>>python setup.py install >>> html = """ test web text contents """ find() , find_all()from bs4 import BeautifulSoupbs = BeautifulSoup(html)print(bs.prettify())bs.find('title')# 인수의 태그를 가지고 온다. bs.find_all('p')# 해당 태그를 한꺼번에 가지고 온다 head_tag = bs.find('head')# html 내에서 부분의 객체를 리턴head_tag.find('title')# 찾아냄head_tag.fi..
파일 생성 및 수정 모드t : 텍스트(default), b : 바이너리, r : 일기(default), w : 쓰기, a : 이어쓰기, + 읽기 , 쓰기 f = open('test.txt', 'w')f.write('텍스트에 저장될 문자열') // write함수 다음에 오는 수는 글자수이다print("텍스트에 저장할 문자열" ,file=f)f.close()파일 자동의 닫기 with open('test.txt', 'a') as test : test.write('\n 입력될 문자열') 읽기f = open('test.txt', 'r')f.readline() # 한번에 한줄씩 f.readlines()# 한번에 전체 라인 foods = f.readlines()for food in foods : print(food)..
os.path 모듈 파일이나 폴더에 대한 정보를 알수 있는 기능os.path.isdir('c:\\python') #폴더이면 TRUE , 파일이면 False, 폴더없음 Falseos.path.isfile('c:\\python\NEWS.txt') #파일존재 True, 파일아님 False, 파일없음 Falseos.path.exists('c:\\python\abc') #인수의 이름으로 폴더 나 파일이 있으면 Trueos.path.getsize('c:\python\test.txt') #파일의 크기 반환, 폴더는 무조건 4096os.path.split('c:\\python\\news.txt') #('c:\\python', 'NEWS.txt')os.path.splitext('c:\\python\\news.txt') ..
OS 모듈 운영체제의 기능 들을 사용import osos.chdir('C:\\temp')#디렉토리 변경os.getcwd()#현재 디렉토리 표시os.listdir('c:\\python')#디렉토리내의 폴더, 파일 리스트 표시for name in os.listdir('c:\\python')#파일명 표시 방법print(name)os.mkdir('c:\\python\\tem')#디렉토리 생성 os.makedirs('c:\\python\\dir1\\dir2\\dir3\\dir4')#중간 폴더를 모두 만들어 줌os.remove('c:\\python\test.txt')#파일 삭제 함수os.unlink('c:\\python\test.txt')#파일 삭제 함수 remove와 unlink는 동일os.rmdir('c:\\p..
urllib.requestimport urllib.request req = urllib.requestd = req.urlopen('http://wikidocs.net/')#사이트오픈시켜 객체를 리턴함 status = d.getheaders()for s in status :print(s)#사이트객체의 헤드값 표시 d.status# 200 request 에 대한 결과 상태 d.read()# 사이트 HTML urllib.parseimport urllib.parse def input_query():# urllib.parse.quote_plus 사용 안함q = str(input("검색어입력")) def input_query() :# urllib.parse.quout_plus 사용q = urllib.parse.qu..
예외처리try:num = int(input("숫자입력"))except ValueError:print("숫자만입력")try:6/0except ZeroDivisionError:print("0으로나눔") try :6/0except (ZeroDivisionError, ValueError) :print("error")try : 6/0except ZeroDivisionError :print('나누기에러')except ValueErrorprint('값에러') try :num = int(input("숫자입력"))except ValueError :print('숫자가 아닙니다')else : print(num)try : except ValueError : else : finally : 의도적 에러 발생 - raise 에러종..
정규식 import reurl=’코알라’print(re.search(‘href=”(.*?)”>’, url).group(1))#위 정규식으로 c:\python\koala.jpg 출력 문법설명.임의의 한 문자가 존재?바로 앞의 문자가 존재하거나 존재하지 않음*바로 앞의 문자가 존재 하지 않거나 무한대로 존재+바로 앞의 문자가 한번 이상 존재^바로 뒤의 문자로 문자열이 시작$바로 앞의 문자로 문자열이 끝남{숫자}숫자만큼 반복{숫자,}숫자 이상만큼 반복{숫자1, 숫자2}숫자 1 이상 , 숫자 2 이하 만큼 반복{문자열}문자나 문자열을 묶음[문자1, 문자2…]대괄호 안에 있는 문자들이 존재하는지 검색[^ ]^기호 바로 뒤에 문자 존재하지 않음[:alpha;]알파벳만 검색[:alnum:]알파벳, 숫자만 검색[:di..
문자열 관련 모듈re : 정규식 관련 모듈 (문자열을 효과적으로 분석 처리)struct : python에서 C언어 API를 사용할 수 있도록 돕는 모듈, C언어 struct 오브젝트를 다루고 이를 통해 바이너리 형태의 파일을 처리 할 수 있도록 도와줌StringO, cStringO : 파일처럼 읽고 쓸 수 있는 오브젝트를 제공, cStringO는 속도를 위해 C언어로 구현된것difflib : 파일 비교 관련 모듈 , unix 의 diff , 윈도우의 comp 와 유사textwrap : word-wrapping 과 같은 텍스트 처리codecs : 텍스트 인코딩 관련 모듈 ------------------------------------------------------------ 다양한 테이터 타입 관련 모..