首页 > 编程语言 >编程打卡:面向对象程序设计

编程打卡:面向对象程序设计

时间:2023-05-22 19:24:07浏览次数:38  
标签:cur get 编程 number 面向对象 todos 打卡 todo conn

import os
import sqlite3

# Create a database connection
conn = sqlite3.connect('todo.db')

# Create a todo table
cur = conn.cursor()
cur.execute('''
CREATE TABLE todo (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  title TEXT NOT NULL,
  due_date DATETIME NOT NULL,
  completed BOOLEAN NOT NULL DEFAULT FALSE
)
''')

# Insert some sample data
cur.execute('''
INSERT INTO todo (title, due_date) VALUES
('Buy groceries', '2023-05-25'),
('Clean the house', '2023-05-26'),
('Do the laundry', '2023-05-27')
''')

# Commit the changes to the database
conn.commit()

# Close the database connection
conn.close()

# Define a function to get all todos
def get_todos():
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('SELECT * FROM todo')
  todos = cur.fetchall()
  conn.close()
  return todos

# Define a function to add a todo
def add_todo(title, due_date):
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('INSERT INTO todo (title, due_date) VALUES (?, ?)', (title, due_date))
  conn.commit()
  conn.close()

# Define a function to delete a todo
def delete_todo(id):
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('DELETE FROM todo WHERE id = ?', (id,))
  conn.commit()
  conn.close()

# Define a function to mark a todo as completed
def mark_todo_completed(id):
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('UPDATE todo SET completed = 1 WHERE id = ?', (id,))
  conn.commit()
  conn.close()

# Define a function to get the number of todos
def get_number_of_todos():
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('SELECT COUNT(*) FROM todo')
  number_of_todos = cur.fetchone()[0]
  conn.close()
  return number_of_todos

# Define a function to get the number of completed todos
def get_number_of_completed_todos():
  conn = sqlite3.connect('todo.db')
  cur = conn.cursor()
  cur.execute('SELECT COUNT(*) FROM todo WHERE completed = 1')
  number_of_completed_todos = cur.fetchone()[0]
  conn.close()
  return number_of_completed_todos

# Define a function to get the number of incomplete todos
def get_number_of_incomplete_todos():
  return get_number_of_todos() - get_number_of_completed_todos()

标签:cur,get,编程,number,面向对象,todos,打卡,todo,conn
From: https://www.cnblogs.com/sugar-refinery/p/17421495.html

相关文章

  • 实验4 函数与异常处理编程
    task1实验源码:print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)实验结果:问题回答:不是。line1中是Python的内置函数,line3是指lin2的全局变量sum,line7中是inc函数中的局部变量,line11中是指line......
  • c++打卡第三十四天
    一、勾股数1、问题描述 2、设计思路   由题可知,数学中并不存在两条直角边相等的勾股数,同时两个直角边的平方和并不一定是整形,可能会存在小数,这样我们的判断勾股数的方法就是,两个直角边的平方和开根号,对此值强制转化为整形,得到的结果进行平方看是否与两直角边的平方和相......
  • 5月22日打卡
    例具有静态数据、成员函数的Point类代码部分: #include<iostream>usingnamespacestd;classPoint{private:intx,y;staticintcount;public:Point(intx=0,inty=0):x(x),y(y){count++;}Point(Point&p){x=p......
  • 打卡第三十一天
    定义基类Point和派生类Circle,求圆的周长一、1.Point类定义两个私有的数据成员floatx,y2.Circle类新增一个私有的数据成员半径floatr和一个公有的求周长的函数getCircumference()二、三、#include<iostream>#include<iomanip>#definePI3.14usingnamespacestd;classPoi......
  • 建民打卡日记5.22
    一、问题描述我们看到,把数字0-9翻倒,有的数字就认不出来了,比如2、3、4、5、7;有的数字看上去没什么大的变化,比如0、1、8;还有的数字变成了另一个数,比如6变成9,9变成6。给定一堆数字,请你判别每个数有没有可能是另一个数字翻倒形成的。二、流程设计对每个给定的数字,如果它......
  • Java网络编程----通过实现简易聊天工具来聊聊NIO
    前文我们说过了BIO,今天我们聊聊NIO。NIO是什么?NIO官方解释它为NewlO,由于其特性我们也称之为,Non-BlockingIO。这是jdk1.4之后新增的一套IO标准。为什么要用NIO呢?我们再简单回顾下BIO:阻塞式IO,原理很简单,其实就是多个端点与服务端进行通信时,每个客户端有一个自己的socket,他们与服......
  • < Python全景系列-5 > 解锁Python并发编程:多线程和多进程的神秘面纱揭晓
    欢迎来到我们的系列博客《Python全景系列》!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法。无论你是编程新手,还是有一定基础的开发者,这个系列都将提供你需要的知识和技能。这是本系列的第五篇,我们将深入探讨Python中的......
  • Jquery操作打卡
    01jquery动态操作节点1.动态操作节点原js:-创建节点createElement('div')createTextNode('内容')-添加节点父节点.appendChild(子节点)父节点.insertBefore(......
  • 实验四 函数与异常编程处理
    实验任务1task1-1实验源码print(sum)sum=42print(sum)definc(n):sum=n+1print(sum)returnsumsum=inc(7)+inc(7)print(sum)实验截图问题:task1.py源码中,共有4处有python语句print(sum)(line1,line3,line7,line11)。这4处使用的标识......
  • 打卡 c语言趣味编程 舍罕王的失算
    问题描述:相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着8×8共64格的象棋棋盘说:陛下,请您赏给我一些麦子吧。就在棋盘的第1格中放1粒,第2格放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上64格......