python操作自带的SQList数据库

python连接到SQList数据库以及简单操作

背景了解: 
Python就内置了SQLite3,所以,在Python中使用SQLite,不需要安装任何东西,直接使用。Python定义了一套操作数据库的API接口,任何数据库要连接到Python, 
只需要提供符合Python标准的数据库驱动即可 
1:代码

# coding=utf-8"""@author: jiajiknag程序功能:连接-创建表-插入数据-显示数据-关闭连接"""import sqlite3# 连接到SQLite数据库# 数据库文件是jjk.db# 如果文件不存在时,会自动在当前目录创建一个conn = sqlite3.connect('jjk.db')# 创建一个Cursor:cursor = conn.cursor()# 执行一条SQL语句,创建user表:cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')# 执行一条SQL语句,插入一条记录:cursor.execute('INSERT INTO user (id,name) values (\'1\', \'jiajikang\')')# 通过rowcount获得插入的行数:print('rowcount(一共插入的行数):', cursor.rowcount)# 关闭Cursor:cursor.close()# 提交事务:conn.commit()# 关闭连接cursor.close()# 查询记录:conn = sqlite3.connect('jjk.db')cursor = conn.cursor()# 执行查询语句:cursor.execute('SELECT * from user WHERE id=?', '1')# 获得查询结果values = cursor.fetchall()print(values)cursor.close()conn.close()

2:结果 

 

欢迎关注公众号:Python爬虫数据分析挖掘,回复【开源源码】免费获取更多开源项目源码

公众号每日更新python知识和【免费】工具

好的,以下是用 `SqList` 类实现约瑟夫环的代码: ```python class SqList: def __init__(self, maxsize=None): self.maxsize = maxsize self._items = [None] * self.maxsize self.length = 0 def __len__(self): return self.length def __getitem__(self, index): if 0 <= index < self.length: return self._items[index] else: raise IndexError('Index out of range') def __setitem__(self, index, value): if 0 <= index < self.length: self._items[index] = value else: raise IndexError('Index out of range') def __iter__(self): for item in self._items: yield item def insert(self, index, value): if self.length >= self.maxsize: raise Exception('SqList is full') if index < 0 or index > self.length: raise IndexError('Index out of range') for i in range(self.length, index, -1): self._items[i] = self._items[i-1] self._items[index] = value self.length += 1 def delete(self, index): if self.length == 0: raise Exception('SqList is empty') if index < 0 or index >= self.length: raise IndexError('Index out of range') for i in range(index, self.length-1): self._items[i] = self._items[i+1] self._items[self.length-1] = None self.length -= 1 def josephus(n, k): lst = SqList(maxsize=n) for i in range(1, n+1): lst.insert(i-1, i) i = 0 while len(lst) > 1: i = (i + k - 1) % len(lst) lst.delete(i) return lst[0] print(josephus(10, 3)) # 输出 4 ``` 在上面的代码中,我们定义了 `SqList` 类来实现线性表。然后,我们使用 `SqList` 类来创建一个长度为 `n` 的线性表,并将 `1` 到 `n` 的整数插入到线性表中。接着,我们使用一个循环来模拟约瑟夫环的过程,每次删除第 `k` 个元素,直到线性表中只剩下一个元素为止。最后,返回剩下的元素即可。 需要注意的是,在约瑟夫环的过程中,删除元素会导致线性表的长度发生变化,因此我们需要使用 `len()` 函数来获取当前线性表的长度,以便正确计算删除元素的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lyc2016012170

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值