Python 基于输入命名数据库
我肯定这不是不可能,就是很容易,但我想不出来。我正在尝试根据输入命名数据库。简而言之:Python 基于输入命名数据库,python,sqlite,Python,Sqlite,我肯定这不是不可能,就是很容易,但我想不出来。我正在尝试根据输入命名数据库。简而言之: import sqlite3 import time import datetime global date d = datetime.datetime.today() month = str(d.month) day = str(d.day) year = str(d.year) date = month+day+year print(type(date)) def name_creation():
import sqlite3
import time
import datetime
global date
d = datetime.datetime.today()
month = str(d.month)
day = str(d.day)
year = str(d.year)
date = month+day+year
print(type(date))
def name_creation():
while True:
global name
name = input("What is the name? ")
answer = input("Is the name correct?(y/n)")
if answer not in ('y', 'n'):
print ("Invalid input")
name_creation()
break
if answer == 'y':
break
if answer == 'n':
print ("Okay, re-enter name.")
global name_date
name_date = name + " " + date
name_creation()
conn = sqlite3.connect (eval(name_date).db)
这其中的大部分并不重要,但我已经尝试了大约两周来解决这个问题。我肯定我的做法是错误的,但我找不到问题所在,所以我可以解决它。您需要在函数中定义name\u date以将其用作全局函数
import sqlite3
import time
import datetime
name_date=''
.
.
.
.
def name_creation():
.
.
global name_date
name_date="type_your_text_here"
conn = sqlite3.connect (eval(name_date).db)
或者你可以让它返回那个名字,然后用它创建一个conn
然后尝试这样命名数据库:
conn=sqlite3.connect(name_date + ".db")
太谢谢你了,我觉得这很简单。这是我两年来第一次使用Python,所以我忘记了很多。