본문 바로가기
728x90
반응형

python421

초보자를 위한 파이썬 300제 // 232 함수 문자열 문제 문자열 하나를 입력받아 인터넷 주소를 반환하는 make_url 함수를 정의하라. make_url("naver") www.naver.com 내풀이 def make_url(name): print("www.%s.com" % name) make_url("naver") 결과값 www.naver.com 정답 def make_url(string) : url = "www." + string + ".com" return url 간단하므로 한줄로 표현할 수도 있습니다. def make_url(string) : return "www." + string + ".com" % 는 문자열 포맷팅을 하는 방식인데 코드가 길어졌을 때, 가독성이 좋아지고 코드도 짧아지기 때문에 익혀두면 아주 좋습니다 ! %s (string - 문.. 2021. 3. 12.
[Python] Flask에서 Session(세션) 사용 방법 및 예제 (공식문서 참조) Python Flask - session 사용방법을 간단하게 알아보자 ! 본 코드는 Flask 공식 문서를 참조 하였습니다. 공식문서 링크 참조 https://flask.palletsprojects.com/en/1.1.x/quickstart/#sessions 아래가 공식문서에 나온 설명 및 코드인데....... 음 이런건 어려우니 건너뛰고 코드를 사용해보겠습니다. 공식문서에 있는 코드에 살짝 보기 좋게 바꿔주고, 코드에 대한 설명은 따로 주석으로 달아놨습니다. from flask import Flask, url_for, request, session, redirect, app from markupsafe import escape from datetime import timedelta app = Flask.. 2021. 3. 12.
[Python] Flask 초간단 설치 및 실행 방법 & 가상환경! (Hello World 띄우기) 저는 ubuntu 18.04 에서 진행하였는데, 사실 리눅스, 윈도우 상관없이 진행 가능 하니 걱정마세요 ㅎ 바로 시작하겠습니다 ! 가상 환경을 사용할 수 있도록 ‘python3-venv’ 패키지를 설치 $ sudo apt install python3-venv 가상환경을 설치하고 설정하는 이유는 각각의 가상환경마다 설치하는 패키지가 다르기 때문에 프로젝트마다 다르게 패키지를 사용 할 수 있기 때문입니다 ! Project 폴더에 진입 후 가상 환경 생성 $ python3 -m venv '가상환경 폴더명' ---------- ‘venv’ 라 칭함 $ python3 -m venv venv 가상환경에 접속 $ source venv/bin/activate (venv) root@root:~/projects/test.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 231 함수 결과예상 문제 아래 코드를 실행한 결과를 예상하라. def n_plus_1 (n) : result = n + 1 n_plus_1(3) print (result) 내풀이 실행이 안되고 에러가 발생한다. 정답 에러가 발생합니다. NameError Traceback (most recent call last) in () 3 4 n_plus_1(3) ----> 5 print (result) 6 NameError: name 'result' is not defined 함수 내부에서 사용한 변수는 함수 밖에서는 접근이 불가능합니다. (문법이 그래요) 함수 내부에서 계산한 값을 전달하기 위해서는 return을 사용해야 합니다. def n_plus_1 (n) : result = n + 1 n_plus_1(3) print (resu.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 230 함수 결과예상 문제 아래 코드의 실행 결과를 예측하라. def my_print (a, b) : print("왼쪽:", a) print("오른쪽:", b) my_print(b=100, a=200) 내풀이 왼쪽: 200 오른쪽: 100 정답 5 번 라인에서 함수를 호출하는데, a 변수에 200, b 변수에 100을 바인딩하라고 지정을 했습니다. 따라서 아래와 같이 출력됩니다. 왼쪽: 200 오른쪽: 100 변수를 지정해서 바인딩할때에는 순서랑 상관없이 지정해준데로 출력 된다. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 229 함수 결과예상 문제 아래 코드의 실행 결과를 예측하라. def my_print (a, b) : print("왼쪽:", a) print("오른쪽:", b) my_print(a=100, b=200) 내풀이 왼쪽: 100 오른쪽: 200 정답 우선 아래의 기본 코드를 분석해 보겠습니다. 5번 라인에서 함수가 호출되면, 함수가 정의된 1번 라인으로 이동합니다. 이 때 함수의 입력 변수 a에 100을 바인딩하고, b에 200을 바인딩합니다. my_print(100, 200) 아래 코드는 함수가 호출될 때 a에 100, b에 200을 바인딩하라는 것을 명시적으로 표현한 코드입니다. 아래 코드는 문법만 다를 뿐 위 코드와 동일한 동작을 수행합니다. my_print(a=100, b=200) 함수의 호출 결과는 아래와 같습니다. 왼쪽.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 228 int() 문제 연봉을 입력받아 월급을 계산하는 calc_monthly_salary(annual_salary) 함수를 정의하라. 회사는 연봉을 12개월로 나누어 분할 지급하며, 이 때 1원 미만은 버림한다. calc_monthly_salary(12000000) 1000000 내풀이 def calc_monthly_salary(money): print(int(money/12)) calc_monthly_salary(1200555) 결과값 100046 정답 입력된 값을 12로 나누고 형변환을 해서 1원 미만을 절사합니다. def calc_monthly_salary(annual_pay) : monthly_pay = int(annual_pay / 12) return monthly_pay int() 함수는 정수만 나타내기 때문.. 2021. 3. 11.
초보자를 위한 파이썬 300제 // 227 함수 슬라이싱 문제 문자열과 한줄에 출력될 글자 수를 입력을 받아 한 줄에 입력된 글자 수만큼 출력하는 print_mxn(string) 함수를 작성하라. printmxn("아이엠어보이유알어걸", 3) 아이엠 어보이 유알어 걸 내풀이 line = "아이엠어보이유알어걸" def printmxn(line, num): for i in range(num+1): print(line[i*num : i*num+num]) printmxn("아이엠어보이유알어걸",3) 결과값 아이엠 어보이 유알어 걸 정답 def print_mxn(line, num): chunk_num = int(len(line) / num) for x in range(chunk_num + 1) : print(line[x * num: x * num + num]) 이번 문.. 2021. 3. 10.
초보자를 위한 파이썬 300제 // 226 함수 슬라이싱 문제 입력 문자열을 한 줄에 다섯글자씩 출력하는 print_5xn(string) 함수를 작성하라. print_5xn("아이엠어보이유알어걸") 아이엠어보 이유알어걸 내풀이 풀지 못하였다......ㅠㅠ 정답 def print_5xn(line): chunk_num = int(len(line) / 5) for x in range(chunk_num + 1) : print(line[x * 5: x * 5 + 5]) 음..... 정답을 봤는데 지금 정확하게 이해가 되지 않는다. 이 문제는 나중에 다시 다루도록 해야겠다. 정답을 보고 풀이 방법 및 이해를 하였다. 아래 방식으로 출력하면 같은 값이 나온다. 그러므로 인덱스값 슬라이스 방법을 잘 응용하면 된다. print(line[0:5]) print(line[5:10].. 2021. 3. 9.
728x90
반응형