Найти - Пользователи
Полная версия: Получение списка кортежей из таблицы БД sqlite через функцию
Начало » Базы данных » Получение списка кортежей из таблицы БД sqlite через функцию
1 2
Cheeta77
Есть рабочий код в программе, на выходе получаю список кортежей:
import os
import sqlite3
prj_dir = os.path.abspath(os.path.curdir) # Получаем текущую папку проекта
base_name = 'Cena.sqlite3' # Имя БД
with sqlite3.connect(prj_dir + '/' + base_name) as connect:
cursor = connect.cursor()
sql_unique_name_region = cursor.execute("SELECT id_region, name_region FROM region").fetchall()
print(sql_unique_name_region)
Не могу перевести это в функцию… не работает, и с return и без него… помогите разобраться…
import os
import sqlite3
def import_from_sqlite_region(): # Импорт данных из таблицы регионов
prj_dir = os.path.abspath(os.path.curdir) # Получаем текущую папку проекта
base_name = 'Cena.sqlite3' # Имя БД
with sqlite3.connect(prj_dir + '/' + base_name) as connect:
cursor = connect.cursor()
sql_unique_name_region = cursor.execute("SELECT id_region, name_region FROM region").fetchall()
return (sql_unique_name_region)

import_from_sqlite_region()
print(sql_unique_name_region)
py.user.next
Cheeta77
Не могу перевести это в функцию… не работает, и с return и без него
Оформи код в тегах code.

[code python]
код пиши в таком теге
[/code]
ZerG

 print(import_from_sqlite_region())
Cheeta77
ZerG
НЕТ!!!
xam1816
Cheeta77
НЕТ!!!
что нет? у тебя в коде у функции скобок не хватало, хочешь сказать что со скобками тоже не работает
Cheeta77
xam1816
не работает.
ни со скобками, ни без скобок… (причем в рабочем коде (без функции) принт работает и без скобок
print(sql_unique_name_region)

Может в самом описании функции что-то не то (аргумент какой должен быть…) или возврата не должно быть или не с тем отступом? перелопатил разные варианты…
ZerG
Cheeta77
Ты слепой или тупой?

 print(import_from_sqlite_region)

 print(import_from_sqlite_region())

 return (sql_unique_name_region)
замени на
 return sql_unique_name_region
Cheeta77
мне не нужно из print-a вызывать функцию. вызываю по тексту программы. список должен быть дальше доступен. называться он должен sql_unique_name_region.
вызывая из принта, это все равно что в функции написать принт, это и так работает…
Понятно же написал, код рабочий в теле программы есть, этот кусок нужно перенести в функцию. После отработки функции, список sql_unique_name_region должен вернуться и быть рабочим дальше по программе…
ZerG
Сорян за тупого
Ты не тупой - ты даун

 peremennaya = import_from_sqlite_region()
print(peremennaya)
py.user.next
Cheeta77
  
import os
import sqlite3
def import_from_sqlite_region():  # Импорт данных из таблицы регионов
    prj_dir = os.path.abspath(os.path.curdir)  # Получаем текущую папку проекта
    base_name = 'Cena.sqlite3'  # Имя БД
    with sqlite3.connect(prj_dir + '/' + base_name) as connect:
        cursor = connect.cursor()
        sql_unique_name_region = cursor.execute("SELECT id_region, name_region FROM region").fetchall()
    return (sql_unique_name_region)
 
import_from_sqlite_region()
print(sql_unique_name_region)
  
import os
import sqlite3
def import_from_sqlite_region():  # Импорт данных из таблицы регионов
    prj_dir = os.path.abspath(os.path.curdir)  # Получаем текущую папку проекта
    base_name = 'Cena.sqlite3'  # Имя БД
    with sqlite3.connect(prj_dir + '/' + base_name) as connect:
        cursor = connect.cursor()
        sql_unique_name_region = cursor.execute("SELECT id_region, name_region FROM region").fetchall()
    return (sql_unique_name_region)
 
sql_unique_name_region = import_from_sqlite_region()
print(sql_unique_name_region)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB