-
ForeignKey, OneToOneField, ManyToManyField
ForeignKey - 1:N 관계 class Post(models.Model): # 생략 class Comment(models.Model): post = models.ForeignKey(Post, on_delete=models.CASCADE, related_name='comment1') → 관계 모델 1 : 해당 모델 N 관계임 (1:N 중에서 N 인 쪽에서 ForeignKey 관계를 선언) ● ForeignKey(모델, on_delete, [옵션]) - 모델 : 관계를 맺을 모델 - on_delete : 관계맺은 모델이 삭제될 때 취할 행동 (1인 쪽의 데이터 삭제시, N 인 쪽의 데이터...
-
정규표현식(Regular Expression)
메타문자 : 특별한 용도로 사용되는 문자 . ^ $ * + ? { } [ ] \ | ( ) 정규표현식 설명 ^ 문자의 시작 $ 문자의 끝 r’ ‘ : raw-string, 백슬래시(\)를 문자로 인식 url패턴을 사용할 때 디렉토리 구분 표시(\)를 편하게 나타낼수 있음 문자 그룹 [ ] 정규표현식 설명 예시 [문자] 1개만 찾음...
-
[라이브러리] csv 읽어오기
import csv with open('sample1.csv', 'r') as f: reader = csv.reader(f, delimiter='|'); next(reader) # 첫행(컬럼명) 건너뛰기 for c in reader: print(c) python의 csv 모듈사용 reader(파일) : csv파일 읽어오기 - delimiter : 디폴트는 ,(콤마) next(객체) : 다음행으로 커서이동 reader 객체는 __iter__를 갖고있음 -> 반복문 사용가능 ● Dict 형태로 가져오기 - DictReader() 사용 import...
-
예외처리 (try-except-else-finally)
try : 실행할 코드 except : 에러가 발생했을 시 실행되는 부분 else : 에러가 발생하지 않았을 시 실행되는 부분 finally : 에러 여부와 상관없이 마지막에 무조건 실행되는 부분 try: a = [1, 2] print(a[3]); # IndexError 4 / 0 # ZeroDivisionError except ZeroDivisionError as e: print(e) except IndexError as e: print('IndexError') finally: print('finish!!') IndexError finish!!...
-
파일 읽기, 쓰기
● open(‘파일명’, ‘모드’) - 모드 : r(읽기), w(쓰기), a(추가하기) - w모드는 파일이 이미 존재할 시 덮어씌움 ● close() : 메모리 반환 f = open("memo.txt", 'w') content = f.read() print(content) f.close() ● with 문 - close()를 사용하지 않아도 with문이 끝나면 메모리를 반환함 with open("memo.txt", 'w') as f: content = f.read() print(content)