我正在尝试连接完整路径,但我遇到了这个问题
>>> path = "/home/astro/Fun LAB/DBlist"
>>> db = sql.connect(path)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
sqlite3.OperationalError: unable to open database file
>>>
我也试过这个
>>> path = "/home/astro/Fun\ LAB/DBlist"
>>> db = sql.connect(path)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
sqlite3.OperationalError: unable to open database file
>>>
我知道这是因为空白因为我已经尝试了这个并且它有效
>>> path = "/home/astro/DBlist"
>>> db = sql.connect(path)
>>>
所以有一种简单的方法来逃避路径中的空白或者我做错了什么?
答案 0 :(得分:0)
我建议命名文件或文件夹不含空格。 (我认为它不可能)相反,使用短划线或下划线。
下一个问题是看看你在哪里运行Python解释器。如果它嵌套在目录中并且您尝试从外部创建路径,那么您的链接会引发错误。
>>> path = "/home/astro/Fun LAB/DBlist"
或
>>> path = "/home/astro/Fun\ LAB/DBlist"
或
>>> path = "/home/astro/DBlist"
如果你在这些目录或其他目录中运行python,将无法工作。
要更正此问题,请尝试:
>>> path = "../home/path/to/file"
答案 1 :(得分:0)
拥有空间确实是一个问题。 我建议带一个符号链接并使用它:
!ln -sf '$path_to_db_file' .
db = sql.connect('db_file')