
Вопрос задан 25.09.2023 в 21:39.
Предмет Информатика.
Спрашивает Евдокимов Ваня.
Вот мой код, всё работает норм нужна помощь с написание последнего пункта Создать 2 таблицы в
Базе Данных Одна будет хранить текстовые данные(1 колонка) Другая числовые(1 колонка) Есть список, состоящий из чисел и слов. Если элемент списка слово, записать его в соответствующую таблицу, затем посчитать длину слова и записать её в числовую таблицу Если элемент списка число: проверить, если число чётное записать его в таблицу чисел, если нечётное, то записать во вторую таблицу слово: «нечётное» Если число записей во второй таблице больше 5, то удалить 1 запись в первой таблице. Если меньше, то обновить 1 запись в первой таблице на «hello» import sqlite3 import random conn = sqlite3.connect('dz_3.db') cursor = conn.cursor() cursor.execute('''CREATE TABLE IF NOT EXISTS tab_1(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 TEXT)''') cursor.execute('''CREATE TABLE IF NOT EXISTS tab_2(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 INTEGER)''') conn.commit() Rainbow = [ 'black', 'red', 5, 7, 9, 4] print(Rainbow) dlin = 0 for i in Rainbow: if type(i) is str: cursor.execute('''INSERT INTO tab_1(col_1) VALUES (?)''', [i]) conn.commit() elif i % 2: cursor.execute('''INSERT INTO tab_2 (col_1) VALUES ('нечётное')''') conn.commit() k = cursor.fetchall() print(k) cursor.execute('SELECT COUNT(*) FROM `tab_2`') cursor.execute('SELECT COUNT(*) FROM `tab_1`') result_tab_1 = cursor.fetchall() result_tab_2 = cursor.fetchall() print(result_tab_1) print(result_tab_2)

Ответы на вопрос

Отвечает Красиков Даня.
Ответ:
да мне тоже нужно такой приложении ововллсььпдв



Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
Для выполнения последнего пункта вашей задачи, вам нужно добавить проверку и выполнение действий в зависимости от количества записей во второй таблице (tab_2
). Если количество записей больше 5, то нужно удалить одну запись из первой таблицы (tab_1
), а если меньше или равно 5, то обновить одну из записей в первой таблице значением "hello".
Вот как можно это реализовать:
pythonimport sqlite3
import random
conn = sqlite3.connect('dz_3.db')
cursor = conn.cursor()
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_1(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 TEXT)''')
cursor.execute('''CREATE TABLE IF NOT EXISTS tab_2(id INTEGER PRIMARY KEY AUTOINCREMENT, col_1 INTEGER)''')
conn.commit()
Rainbow = [
'black', 'red', 5, 7, 9, 4
]
print(Rainbow)
for i in Rainbow:
if type(i) is str:
cursor.execute('''INSERT INTO tab_1(col_1) VALUES (?)''', [i])
conn.commit()
elif i % 2:
cursor.execute('''INSERT INTO tab_2 (col_1) VALUES ('нечётное')''')
conn.commit()
# Проверяем количество записей в таблице tab_2
cursor.execute('SELECT COUNT(*) FROM `tab_2`')
result_tab_2 = cursor.fetchone()[0]
if result_tab_2 > 5:
# Если количество записей в таблице tab_2 больше 5, то удаляем одну запись из таблицы tab_1
cursor.execute('DELETE FROM tab_1 WHERE id IN (SELECT id FROM tab_1 LIMIT 1)')
conn.commit()
else:
# Если количество записей в таблице tab_2 меньше или равно 5, то обновляем одну запись в таблице tab_1
cursor.execute('UPDATE tab_1 SET col_1 = "hello" WHERE id = (SELECT id FROM tab_1 LIMIT 1)')
conn.commit()
# Проверяем результаты
cursor.execute('SELECT * FROM tab_1')
result_tab_1 = cursor.fetchall()
print(result_tab_1)
cursor.execute('SELECT * FROM tab_2')
result_tab_2 = cursor.fetchall()
print(result_tab_2)
conn.close()
Этот код добавляет записи в соответствующие таблицы, затем проверяет количество записей в tab_2
и выполняет соответствующие действия в зависимости от этого количества.


Похожие вопросы

Информатика 27
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili