如何用Python创建SQLite3数据库文件?变量替代失效问题解决
问题原因与解决方法
核心原因
你把原始字符串换成变量后失效,几乎都是因为变量赋值时没处理好路径里的反斜杠。直接传参用r"..."时,Python会把反斜杠当作普通字符;但如果变量赋值时没加r前缀,比如写成db_path = "C:\sqlite\db\pythonsqlite.db",Python会把\s、\d这类组合当成转义字符解析,导致实际传递的路径和预期不符,自然连不上数据库。
三种解决办法
- 给变量也加上原始字符串前缀
r,和直接传参保持一致:if __name__ == '__main__': db_path = r"C:\sqlite\db\pythonsqlite.db" create_connection(db_path) - 把路径里的反斜杠换成正斜杠,SQLite完全支持这种路径格式:
if __name__ == '__main__': db_path = "C:/sqlite/db/pythonsqlite.db" create_connection(db_path) - 用双反斜杠对单个反斜杠进行转义:
if __name__ == '__main__': db_path = "C:\\sqlite\\db\\pythonsqlite.db" create_connection(db_path)
内容的提问来源于stack exchange,提问作者farkled
相关产品推荐
相关产品推荐

