使用Python和文本文档数据库进行服务器端开发

0 投票
4 回答
2049 浏览
提问于 2025-04-18 13:10

我在工作用的机器上没有PHP服务器,也没有像Mysql这样的数据库。请问用Python代替PHP,用平面文件数据库代替Mysql可行吗?我对性能和扩展性不是太在意,毕竟我不是要做下一个Facebook。我只是想从服务器加载数据,然后在网页上显示出来,可能还要处理一些输入表单。还有,我的想法有什么大问题吗?或者有没有其他方法可以解决服务器上没有PHP和数据库的问题?

4 个回答

1

有很多方法可以运行Python应用程序,但你可能应该考虑使用WSGI标准的方式。很多框架都支持这个,比如Pyramid、Pylons、Django等等。如果你还没决定用哪个框架,那可以先想想你长期的需求,以及你已经掌握的知识。

关于数据库,有很多选择。虽然提到了SQLlite,但还有很多其他不需要服务器进程的数据库。如果你只需要存储少量数据,简单的文件就可以了。但如果数据量大或者需要更复杂的关系,建议使用SQLlite。

1

Python自带了一个叫做sqlite3的模块,可以用来访问SQLite数据库。唯一的缺点是,在任何时候,只有一个线程可以对数据库进行写操作,也就是说,不能同时有多个线程写入数据。

2

如果你想学习用Python做网页开发,可以看看Flask这个框架。

有很多例子是用简单的文件来提供数据,而不是使用数据库。

你可以看看James Sharding的博客,里面讲了怎么用Flask-FlatPages从文件中提供内容。

你也可以很容易地调整这个方法,直接提供纯文本(而不是把它解析成Markdown格式)。

最终的结果是一个轻量级、稳定的系统,避免了使用数据库的复杂性。

正如其他回答所提到的,使用SQLite也是一个很不错的选择。

2

在服务器上使用Python的事情比较复杂,因为Python和PHP是两种不同的东西,没法直接比较。你可以看看Python加上Django这个框架,然后再考虑你想做什么。具体可以参考这里:https://www.djangoproject.com

用Python写服务器端的脚本其实并不难,WSGI这个接口也很好用。不过,如果你想要和PHP一样的功能,通常需要用到好几层软件。

至于第二个问题——数据库,这个就简单多了。Python自带了SQLite3的接口,这样你就可以用一个只有一个数据库文件的数据库,听起来很像SQL的样子。SQLite使用得非常广泛,通常也很可靠。如果想了解更多关于sqlite3模块的信息,可以查看这里:https://docs.python.org/2/library/sqlite3.html

撰写回答