파이썬42 클래스 다시 공부하기 1. 전역변수와 지역변수 def scope_test(): def do_local(): # 지역 변수 -> local spam spam = "local spam" def do_nonlocal(): # nonlocal 변수 ->nonlocal spam nonlocal spam spam = "nonlocal spam" def do_globa(): # global 변수 -> global global spam spam = "global spam" spam = "test spam" do_local() print("After local assignment:",spam) do_nonlocal() #nonlocal 함수 : 전역제외, 가까이 있는 함수들을 둘러싸서 적용할 수 있도록함 print("After nonlocal assignment:".. 파이썬 2023. 1. 22. [자료구조] 시간 복잡도와 공간 복잡도 시간 복잡도 시간 복잡도는 연산하는 기기마다 성능이 다르므로, 시간 소요가 아니라 연산 횟수를 기준으로 계산합니다. 시간복잡도의 유형에는 세가지가 있습니다. 1. 빅 오메가 Ω : 주어진 알고리즘보다 시간복잡도가 느릴때 2. 빅 세타 θ : 빅오메가와 빅 오가 같을때 3. 빅 오 O : 주어진 알고리즘보다 시간복잡도가 같거나 더 클때 N = int(input()) M = int(input()) s = 0 for i in range(N): for j in range(M): if i + j != 10: s = s + i print(s) 위의 예문에서, 시간복잡도를 구해보겠습니다. 1. 빅 오메가 : O(1) , O(N) => 주어진 알고리즘보다 시간 복잡도가 느릴때 2. 빅 세타 : θ(N) => 빅 오메가.. 파이썬 2023. 1. 16. No module named ’win32com’ error Python win32com 모듈을 사용해서 아웃룩으로 메일을 보내려고 했는데, No module named ’win32com’ error 발생 했다. 패키지에서 수동으로 설치하니 정상적으로 작동했다. 시도 - python 삭제 후 재설치 - C:\Users\{Username}\AppData\Local\Programs\Python\Python39\Lib\site-packages 에서 win32com 삭제 후 pip install 재설치 파이썬 2022. 11. 2. VirusTotal API 이용해서 IP 검색하기(vtapi3 - VirusTotal in Python) VirusTotal은 무료로 파일 검사를 제공하는 웹사이트입니다. 다음코드는,vtapi3 파이썬 모듈을 활용하여 virustotal에서 ip에 대한 정보들을 가져온 후에 , 악성 정보만을 출력할 수 있는 코드를 구성해보았습니다. from vtapi3 import VirusTotalAPIIPAddresses,VirusTotalAPIError vt_api_ip_addresses = VirusTotalAPIIPAddresses( 'your_apikey') # ip들을 검색한다. try: result = vt_api_ip_addresses.get_report('ip') # 검색이 안되면 error 메시지를 출력한다. except VirusTotalAPIError as err: print(err, err.err_.. 파이썬 2022. 10. 27. 4-2 For 문 sum = 0 for i in range(1,100): sum += i print(sum) words = ['cat','window','defenestrate'] # words 리스트를 w 변수에 삽입한다. # for 변수 in 리스트(또는 튜플, 문자열): # 수행할 문장1 # 수행할 문장2 for w in words: # w의 값과 w의 길이값을 출력한다. print(w,len(w)) #두개 이상의 변수를 사용하는 방법 users = { "John": "inactive", "Helen": "active", "James": "active", # and so on... } # Strategy: Iterate over a copy for user, status in users.copy().items():.. 파이썬 2022. 10. 20. 4-1. IF 문 # x는 입력값을 받는다. x = int(input("Please enter an integer:")) #만약에 x가 0보다 작다면? if x < 0 : # x는 0이 된다. x = 0 #Negatie change to zero를 출력한다. print('Negative changed to zero') # x가 0보다 작고, 0이라면? elif x == 0 : # Zero를 출력한다. print('Zero') #x 가 1이라면? elif x == 1 : # Single을 출력한다. print('Single') # 위에 다 아니라면? else: # More을 출력한다. print('More') 파이썬 2022. 10. 20. 데이터를 영구적으로 보유하고 싶다면..? 데이터를 영구적으로 보유하고 싶다면 , Django의 Model 을 이용하면 DB를 쉽게 사용할 수 있다. 파이썬/Django 2022. 9. 20. Update - 페이지 상세보기일때, 업데이트 버튼이 나오도록 출력합니다. - 라우팅 설정을 하기 위하여, myapp의 urls.py에 update의 path 값을 넣어줍니다. @csrf_exempt def update(request,id): global topics if request.method == 'GET': # 사용자가 GET 으로 접속 : update라는 텍스트를 출력 for topic in topics: if topic['id'] == int(id): selectedTopic = { "title":topic['title'], "body":topic['body'] } # update는 create와 다르게, 기존 데이터를 가져와야한다! article = f''' {selectedTopic['body']} .. 파이썬/Django 2022. 9. 20. Delete from django.shortcuts import render,HttpResponse,redirect from django.views.decorators.csrf import csrf_exempt nextId = 4 topics = [ {'id':1, 'title':'routing', 'body':'Routing is ..'}, {'id':2, 'title':'view', 'body':'View is ..'}, {'id':3, 'title':'Model', 'body':'Model is ..'}, ] def HTMLTemplate(articleTag, id=None): global topics contextUI = '' if id != None : contextUI = f''' ''' ol = '' f.. 파이썬/Django 2022. 9. 18. Create 태그 : 전송 파이썬/Django 2022. 9. 18. 읽기 기능 상세보기 구현 파이썬/Django 2022. 9. 18. 홈페이지에 읽기 기능 구현 from django.shortcuts import render,HttpResponse import random topics = [ {'id':1, 'title':'routing', 'body':'Routing is ..'}, {'id':2, 'title':'view', 'body':'View is ..'}, {'id':3, 'title':'Model', 'body':'Model is ..'}, ] # 글을 딕셔너리에 담고, 이 값들을 모아 topics라는 리스트에 넣어 줍니다. def index(request): global topics # topics 변수를 사용하기 위해 전역 변수로 지정 ol = '' #ol이라는 변수를 만든다. for topic in topics: ol += f'{topic["t.. 파이썬/Django 2022. 9. 18. 이전 1 2 3 4 다음