Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在SQLite表中存储Python函数?_Python_Sqlite - Fatal编程技术网

如何在SQLite表中存储Python函数?

如何在SQLite表中存储Python函数?,python,sqlite,Python,Sqlite,我正在用Python创建一个简单的网络监控web应用程序 鉴于: 我想从GUI管理一切。安装后无需触摸主机服务器上的文件 我希望能够在Python中定义自定义检查,并将这些函数/检查存储在SQLite数据库中 问题: 我应该如何在SQLite数据库中存储textarea(python函数) 从SQLite数据库中取出另一个python脚本后,如何调用该函数 您可以使用pickle-Python对象序列化将函数转换为文本,并将文本存储在数据库中。请参阅:SQLite文本字段可以满足此要求。您

我正在用Python创建一个简单的网络监控web应用程序

鉴于:

  • 我想从GUI管理一切。安装后无需触摸主机服务器上的文件
  • 我希望能够在Python中定义自定义检查,并将这些函数/检查存储在SQLite数据库中
问题:

  • 我应该如何在SQLite数据库中存储textarea(python函数)

  • 从SQLite数据库中取出另一个python脚本后,如何调用该函数


您可以使用pickle-Python对象序列化将函数转换为文本,并将文本存储在数据库中。请参阅:

SQLite文本字段可以满足此要求。您可以通过如下代码调用函数:


但我建议您使用随机文件名将代码保存在磁盘上。然后文件名可以保存在数据库中,代码可以像普通模块一样使用。

听起来像是一个有趣的项目。出于兴趣,将python函数存储在数据库中而不是文件系统上的模块中的动机是什么?我认为您应该使用查找表而不是这种复杂的方式。。。
>>> code = """
... def hello():
...     print 'Hello world'
... """
>>> exec code
>>> hello()
Hello world