이번 시간에는 firebase 데이터베이스와 연동하여 간단한 무서운이야기 어플을 만들도록 하겠습니다.오늘 배워서 완성할 앱은 다음과 같습니다. 이 프로젝트를 만들기 위해선 파이어베이스에 프로젝트를 생성하고 해당 프로젝트를 플러터 프로젝트와 연동부터 해야합니다.파이어베이스-플러터 연동방법은 ''Flutter&Firebase 커뮤니티 앱개발]"을 참조해주시기 바랍니다. (아래 링크) https://eunbox8292.tistory.com/entry/FlutterFirebase-%EC%BB%A4%EB%AE%A4%EB%8B%88%ED%8B%B0-%EC%95%B1%EA%B0%9C%EB%B0%9C-02-firebasecli-%EC%84%A4%EC%B9%98 [Flutter&Firebase 커뮤니티 앱개발] 02. ..
플러터 앱 개발 시 간단한 구성 요소들을 배치하여 동작시키는 법을 알아보겠습니다.오늘 배워서 완성할 앱은 다음과 같은 간단한 앱입니다. 지금부터 만들어 봅시다. 앱 기본 틀 구성 import 'package:flutter/material.dart';void main() { runApp(const MyApp());}class MyApp extends StatelessWidget { const MyApp({super.key}); // This widget is the root of your application. @override Widget build(BuildContext context) { return MaterialApp( title: 'Flutter Tutorial', ..
객체지향 개념이 나타나기 이전의 프로그래밍 방법에서는 프로그램이 어떤 일을 하고 나서, 그다음엔 어떤 일을 하고, 또 그다음엔 뭘 하라는 식으로 컴퓨터가 해야 할 일을 알려주기에 바빴습니다.그런데 객체지향 프로그래밍(Object-Oriented Programming)에서는 프로그램을 작성할 대상이 되는 실제 세계의 사물(객체)을 그대로 표현하고, 그것들이 어떻게 움직이는지 정해주고 나서야 비로소 그 객체들에게 일을 시킵니다. 객체지향 프로그래밍을 잘 사용하면 보다 좋은 프로그램을 빨리 만들 수 있고, 나중에 수정하기도 편해진다고 합니다. 프로그래밍 언어들이 모두 객체지향적인 것은 아니지만, 요즘에 널리 사용되는 언어 중에는 객체지향을 지원하는 것이 많습니다.파이썬은 꼭 객체지향적으로 작성하지 않아도 됩..
이번 시간에는 파일을 다루는 방법을 알아보겠습니다. 파일을 다룰 수 있게 되면 프로그램과 데이터를 따로 관리할 수 있지요. 먼저 메모장으로 텍스트 파일 하나를 만들어봅시다.Programming is fun.Very fun!You have to do it yourself...각자 파이썬 스크립트를 저장하기 위한 폴더를 만들어두셨을 거예요. 거기에다가 Python_for_Fun.txt와 같은 이름으로 저장해주세요. 그리고나서 아래 예제를 따라해보세요. 폴더와 파일의 이름은 각자 지으신 대로 써주시구요.>>> f = open('C:\\python_newbie\\Python_for_Fun.txt')>>> f.read()'Programming is fun.\nVery fun!\n\nYou have to do i..
다른 사람이 만들어놓은 모듈(module)을 잘 활용하면 쉽고 빠르게 프로그램을 개발할 수 있습니다. 우리가 지금까지는 혼자서 변수, 함수를 만들어 쓰면서 자급자족하는 방법을 배웠다고 한다면, 이제부터는 남이 만들어 놓은 부품을 가져다가 사용하는 방법을 배울 차례입니다. math 모듈수학적인 계산 기능이 필요하다면 math라는 모듈을 불러와서 사용하시면 됩니다.>>> import math # math 모듈을 가져와라제곱근(square root)을 구해볼까요?>>> math.sqrt(2) # 2의 제곱근1.4142135623730951>>> math.sqrt(3) # 3의 제곱근1.73205080756887..
파이썬의 자료형은 크게 숫자(numbers), 시퀀스(sequence), 매핑(mapping) 등으로 나눌 수 있습니다.숫자숫자를 나타내는 자료형으로는 정수(int), 부동소수점수(float), 복소수(complex)가 있습니다.intint는 정수(integer)를 나타냅니다.>>> type(100000000) # 정수floatfloat는 원래 부동소수점수(floating-point number)를 가리키는데, 지금은 단순히 소수점 이하를 표현할 수 있는 수라고 생각하셔도 좋습니다.>>> type(2.8) # 부동소수점수int끼리 연산한 결과가 float로 나오기도 합니다.>>> 5 / 31.6666666666666667 시퀀스문자열(str), ..
오늘은 람다 형식과 그것을 이용하는 여러 가지 함수들에 대해서 알아보겠습니다. lambda 매개변수 : 표현식 다음은 두 수를 더하는 함수입니다.>>> def hap(x, y):... return x + y...>>> hap(10, 20)30이것을 람다 형식으로는 다음과 같이 표현합니다.>>> (lambda x,y: x + y)(10, 20)30너무나 간단해졌습니다.몇 가지 함수를 더 배워보면서 람다가 어떻게 이용되는지 알아보도록 하죠. map()먼저 map 함수를 보겠습니다.map(함수, 리스트)이 함수는 함수와 리스트를 인자로 받습니다. 그리고, 리스트로부터 원소를 하나씩 꺼내서 함수를 적용시킨 다음, 그 결과를 새로운 리스트에 담아준답니다. >>> map(lambda x: x ** 2, rang..
pygame을 사용하여 위와같이 장애물을 피하는 게임을 구현하는 방법을 안내해 드리겠습니다.여기에 사용될 캐릭터와 장애물은 아래와 같이 bird.png와 tree.png 이미지를 사용합니다. 아래는 게임을 구현하기 위한 단계별 코드와 설명입니다.1. 기본 설정 및 초기화import pygameimport random# 초기화pygame.init()# 화면 크기 설정SCREEN_WIDTH = 800SCREEN_HEIGHT = 600screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))pygame.display.set_caption("Flappy Bird Clone")# 색상 설정WHITE = (255, 255, 255)# 이미지 로드bird_i..
1. 가상환경 리스트 조회현재 사용 중인 가상환경은 *로 표시됩니다.conda env list또는conda info --envs2. 가상환경 생성기본 가상환경 생성conda create --name myenv활용1: 가상환경 생성 시 라이브러리 함께 설치conda create --name myenv numpy pandas matplotlib활용2: Python 3.9와 함께 설치conda create --name myenv python=3.93. 가상환경 복제conda create --name newenv --clone myenv4. 가상환경 활성화/비활성화가상환경 활성화conda activate myenv가상환경 비활성화conda deactivate5. 가상환경 삭제conda remove --name ..
파이썬을 이용한 웹 크롤링웹 크롤링(Web Crawling)은 인터넷 상의 웹 페이지를 자동으로 탐색하고 데이터를 추출하는 작업을 의미합니다. 이는 데이터 수집, 분석, 웹 아카이빙 등 다양한 용도로 사용될 수 있습니다. 이 글에서는 파이썬을 이용한 웹 크롤링에 대해 알아보겠습니다.1. 웹 크롤링이란?웹 크롤링은 특정 웹사이트나 여러 웹사이트의 데이터를 자동으로 수집하는 기술입니다. 검색 엔진의 웹 크롤러가 대표적인 예로, 이들은 인터넷을 탐색하여 웹 페이지의 내용을 색인합니다. 웹 크롤링을 통해 대규모의 데이터를 수집하고 분석할 수 있어, 많은 기업과 연구기관에서 활용하고 있습니다.2. requests 및 BeautifulSoup?파이썬에서는 웹 크롤링을 쉽게 할 수 있도록 도와주는 여러 라이브러리가 ..
아두이노 기본: LED제어하기 아두이노 보드와 브레드 보드에 따로 +와 -을 연결한다 그리고 푸쉬버튼에 저항을 연결해 -쪽으로 연결해준다 저항과 연결된 푸쉬버튼은 아두이노 보드의 7번과 연결 저헝과 연결된 LED그 위에 8번과 연결해준다 아두이노 프로그램을 켜서 다음과 같이 코딩해준다. (*아두이노 프로그래밍 세팅방법은 아래 블로그글 참조)https://codingrun.com/53 아두이노 IDE(프로그램)설치 및 환경설정1. FTDI USB 드라이버 설치하기 http://www.ftdichip.com/Drivers/VCP.htm FTDI 홈페이지에 접속하여, 운영체제에 맞는 드라이버를 다운로드 합니다. 저는 윈도우를 사용하므로윈도우에서 setup executable를 다운받codingrun.com ..
S&P 500 ETF는 미국의 대표적인 주식 시장 지수를 추종하는 상장지수펀드(ETF)입니다. S&P 500 지수는 미국 주식시장에서 시가총액이 큰 500개 기업의 주식을 포함하며, 시장의 전체적인 동향을 반영하는 중요한 지표로 여겨집니다. S&P 500 ETF는 이러한 지수를 그대로 추종하여, 투자자들이 한 주식 종목에 집중하는 위험을 분산시키면서도 미국 경제 전반의 성과를 따라갈 수 있도록 설계되었습니다. S&P 500 ETF의 특징다양한 포트폴리오:S&P 500 지수에는 500개의 대형 주식이 포함되어 있어, ETF 역시 이들 주식에 분산 투자합니다. 이는 개별 주식의 변동성 위험을 줄이고, 안정적인 수익을 추구할 수 있게 합니다.비용 효율성:일반적인 주식형 펀드보다 낮은 관리비용과 거래비용을 가지..