Notice
Recent Posts
Recent Comments
Link
TanzDev
TIL 9 ( 로또 번호 추출기 작성) 본문
from flask import Flask, render_template
app = Flask(__name__)
import random
@app.route("/")
def home():
name = "ABDYKAPAR KYZY NURZADA"
lotto = [16, 18, 20, 23, 32, 43]
def generate_lotto_numbers():
numbers = random.sample(range(1, 46), 6)
return sorted(numbers)
random_lotto = generate_lotto_numbers()
def count_common_elements(list1, list2):
common_elements = set(list1) & set(list2)
return len(common_elements)
common_count = count_common_elements(lotto, random_lotto)
context = {
"name": name,
"lotto": lotto,
"random_lotto": random_lotto,
"common_count": common_count,
}
return render_template("index.html", data=context)
@app.route("/mypage")
def mypage():
return "This is My Page!"
if __name__ == "__main__":
app.run(debug=True)
app.py
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.ball {
display: inline-block;
width: 30px;
height: 30px;
border-radius: 50%;
background-color: #FFD700;
color: #FFFFFF;
text-align: center;
line-height: 30px;
margin-right: 5px;
}
.randomball {
display: inline-block;
width: 30px;
height: 30px;
border-radius: 50%;
background-color: red;
color: #FFFFFF;
text-align: center;
line-height: 30px;
margin-right: 5px;
}
.coinman {
height: 100px;
}
</style>
</head>
<body>
<h1>안녕, {{ data.name }}</h1>
<img class="coinman" src="{{ url_for('static', filename='coinman.png') }}" alt="">
<h2>로또 번호: {{ data.lotto }}</h2>
<h2>랜덤 로또 번호: {{ data.random_lotto }}</h2>
<h1>로또 번호</h1>
{% for num in data.lotto %}
<div class="ball">{{ num|e }}</div>
{% endfor %}
<h1>랜덤 로또 번호</h1>
{% for num in data.random_lotto %}
<div class="randomball">{{ num|e }}</div>
{% endfor %}
{% if data.common_count == 6 %}
<h2>{{ data.common_count }}개 맞았습니다! 로또 1등입니다.</h2>
{% elif data.common_count == 5 %}
<h2>{{ data.common_count }}개 맞았습니다! 로또 2등입니다.</h2>
{% elif data.common_count == 4 %}
<h2>{{ data.common_count }}개 맞았습니다! 로또 3등입니다.</h2>
{% elif data.common_count == 3 %}
<h2>{{ data.common_count }}개 맞았습니다! 로또 4등입니다.</h2>
{% else %}
<h2>{{ data.common_count }}개 맞았습니다! 탈락입니다.</h2>
{% endif %}
</body>
</html>
index.html
VSCODE로 연휴동안 공부해보았다.
점점 더 난이도가 상승하는 와중에 첫주차와 둘째주차에 공부했던 내용과 다르게 깊이가 달라진다
기초를 더욱 더 다져두어야 함을 느꼈다.
※ 어떤 문제가 있었는지
- VSCODE에 FLASK 폴더 및 터미널에 .VENV가 문구가 안뜨는 문제가 발생했다.
※ 내가 시도해본 것들
- 챗지피티와 영상을 되돌려보며 해결했다.
※ 어떻게 해결했는지
- 우선 챗 지피티 기준으론 터미널에 .VENV가 뜨지 않더라도
ls -a 명령어로 .venv가 나오는지 확인이 된다고했다.
※ 무엇을 새롭게 알았는지
- vs code 프로그램을 이것저것 건드려보며 적응도가 높아지고있다!
터미널 관련 이슈가 발생한 편이었는데 이것저것 찾아보며 이해하고있다
'기록보드 > TIL' 카테고리의 다른 글
TIL 11 (웹개발 강의 5주차 완강) (1) | 2024.02.12 |
---|---|
TIL 10 (멜론차트 크롤링 및 웹개발 5주차 입성) (1) | 2024.02.11 |
TIL 8 (파이썬 기초문법 ~ 날씨 웹 크롤링) (2) | 2024.02.07 |
TIL 7 (JQUERY 이해) (0) | 2024.02.06 |
TIL 6 (웹개발 기초) (1) | 2024.02.05 |