코딩 연습/코딩배우기
-
[Python] 문자열 내 특수문자 제거 - replace(), isalnum(), join() 등 사용코딩 연습/코딩배우기 2021. 6. 23. 11:48
파이썬에서 특수문자 제거하는 방법 파이썬에서 추출한 문자열 등으로 디렉토리(폴더)나 파일명 생성 시 특수문자가 있을 경우 에러 발생함 (파일 이름에는 \ / : * ? " | 문자 사용 불가) 이 문제를 해결하는 4가지 방법 (단, 정규표현식 방법은 제외함) ## 방법 1. title = '라이프사이즈900*6001팩 - 구입' special_char = '\/:*?"|' for c in special_char: if c in title: print(title.find(c), c) title = title.replace(c, 'x') print(title) # 라이프사이즈900x6001팩 - 구입 ## 방법 2. specialChar = '!@#$%^&*()_{}[]\|;:''"?/' title2 = '..
-
[Python] 폴더(디렉토리) 만들기 - mkdir() or makedirs()코딩 연습/코딩배우기 2021. 6. 22. 19:59
파이썬으로 폴더(디렉토리) 만들기 import os ## os.mkdir(path) 또는 os.mkdirs(path) # 절대주소 D:\projects 폴더에 temp 폴더 생성 path = 'D:/projects/temp' # 'D:\\projects\\temp' os.mkdir(path) # 현재 폴더에 temp 폴더 생성 path1 = './temp' os.mkdir(path1) # 상위, 하위 폴더를 같이 만들 때 path2 = './imsi/temp' # os.mkdir(path2) # 지정한 경로가 없을 때 FileNotFoundError 에러 발생 os.makedirs(path2) # 폴더가 있는지 없는지 확인 후 만들 때 path3 = './test' if not os.path.exists..
-
파이썬 실천 기술 #06 - 내장함수와 특수메서드(스페셜 메서드)코딩 연습/코딩배우기 2021. 6. 12. 00:01
효율적 개발로 이끄는 파이썬 실천 기술 - 내장함수와 특수메서드 (참고용으로 사용할 부분만 간략하게 정리) 내장 함수(embeded function) 객체 타입 조사 : isinstance(), issubclass(), callable() 객체 속성 관련 함수 : hasattr(), getattr(), setattr(), delattr() 이터러블 객체 받는 함수 : zip(), sorted(), filter(), map(), all(), any() # ininstance(), issubclass() - 동적 타입 판정 d = {} print(isinstance(d, dict)) print(isinstance(d, (int, list, dict))) # 튜플의 여러 클래스에서 동시 비교 print(iss..
-
파이썬 실천 기술 #05 - 이름공간, 스코프코딩 연습/코딩배우기 2021. 6. 3. 13:39
효율적 개발로 이끄는 파이썬 실천 기술 - 이름공간(namespace), 스코프 (참고용으로 사용할 부분만 간략하게 정리) 이름공간(namespace) 이름과 객체의 매핑, 특정한 하나의 이름이 통용될 수 있는 범위 이름공간이 다르면 같은 이름이 다른 객체를 참조할 수 있다 이름공간의 종류 : 전역 이름공간(모듈별), 지역 이름공간(함수 및 메서드별), 빌트인 이름공간(내장함수, True/False, None 등) 이름공간 생성 시점 : 내장객체 이름공간은 파이썬 실행 시, 모듈별 전역 이름공간은 해당 모듈이 최초에 로딩될 시, 로컬 이름공간은 변수 호출 시 생성되며, 함수에서 벗어나면 그 이름공간은 삭제됨 클래스 정의 시 로컬 이름공간이 생성되고, 클래스 변수와 메서드는 이 이름공간에 속하고, 만들어진..
-
파이썬 실천 기술 #04 - 클래스와 인스턴스코딩 연습/코딩배우기 2021. 5. 26. 12:44
효율적 개발로 이끄는 파이썬 실천 기술 - 클래스와 인스턴스 (참고용으로 사용할 부분만 간략하게 정리) 파이썬의 클래스 구조 파이썬에서는 클래스도 객체이고, 클래스를 정의하면 그 이름의 클래스 객체가 만들어진다. class 키워드 사용하여 실행 시 객체를 만들어낸다. 같은 클래스의 여러 인스턴스(즉, 객체)는 같은 특성을 가지면서 서로 각각 독립된 상태를 유지한다. # 클래스 정의 - Page라는 이름을 가진 객체(즉, 클래스 객체) 생성 # 이 클래스 객체는 그 자체로 새로운 인스턴스(객체)를 만들 수 있고, # 인스턴스는 클래스 정의의 내용에 기술된 메서드나 변수를 가지는데, # self.num 과 self.content 는 인스터스 변수이고, __init__() 와 output()는 인스턴스 메서드..
-
파이썬 실천 기술 #03 - 함수코딩 연습/코딩배우기 2021. 5. 25. 20:07
효율적 개발로 이끄는 파이썬 실천 기술 - 함수 (참고용으로 사용할 부분만 간략하게 정리) 함수 파이썬의 모든 데이터는 객체라고 함(클래스나 인스턴스, 함수도 객체) 함수를 정의하면 함수명의 이름과 똑같은 함수 객체(function object)가 만들어짐 함수 객체를 다른 함수의 인수(argument)로 전달하거나 변수에 대입 가능 함수명에 ()를 붙여 호출하고 처리(실행)한 결과를 반환값으로 호출자에게 반환 # 함수는 객체, function 타입 def print_page(content): print(content) print(print_page) # 함수 객체 출력 (함수명 print_page == 변수) print_page('인수 있는 함수임') # ()를 붙여 호출, 인수 있음 print(pri..
-
파이썬 실천 기술 #02 - 데이터 구조코딩 연습/코딩배우기 2021. 5. 20. 17:44
효율적 개발로 이끄는 파이썬 실천 기술 - 데이터 구조 (참고용으로 사용할 부분만 간략하게 정리) # None d = {'a': 1, 'b': 2} print(d.get('b')) print(d.get('c')) # get() 메서드는 값이 없으면 None 리턴됨으로 None이 보임. print(d.get('c', '없음')) # 디폴트 값을 줘서 None 대신 출력하도록 할 수 있음 [결과] 2 None 없음 # bool - 논리값(참/거짓) 다루는 타입 print(type(True), type(False)) print(bool(0), bool(None), bool([]), bool('book'), bool('0')) [결과] False False False True True x = ['book'] y..
-
파이썬 실천 기술 #01 - PEP20, 제어흐름(if, for, while, Exception)코딩 연습/코딩배우기 2021. 5. 18. 11:09
효율적 개발로 이끄는 파이썬 실천 기술 - PEP20, 제어흐름(if, for, while, Exception) (참고용으로 사용할 부분만 간략하게 정리) ▼ 파이썬 설계 가이드라인 - PEP20: The Zen of Python import this [결과] The Zen of Python, by Tim Peters Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special ca..