我是靠谱客的博主 迷人香烟,这篇文章主要介绍python调用pyd失效,现在分享给大家,希望可以做个参考。

  1. 给别人python项目提供某个实现,不像让人看到源码(敏感配置等),可以将自己的python文件打包成pyd,提供给三方使用,例如我的一个想做成pyd文件的demo如下
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# python连接demo import json import pypyodbc # sybase连接串 conn_str = 'DSN=***;UID=**;charset=cp850' conn = pypyodbc.connect(conn_str) cur = conn.cursor() def insert(param): cur.execute("insert into ** values" + param) cur.commit() def select(): res = cur.execute("select * from **") rows = res.fetchall() for row in rows: print(row) return rows.__str__() if __name__ == '__main__': s = ('990', 'pyd传参用例', '', '1') # insert(s.__str__()) select() cur.close()
  1. 使用的时候可能会发现根本调用不了的问题。在下面的代码段,external为pyd文件所在主项目的文件夹,sysbaseOpr是文件名,而select()是我们隐藏起来的数据库操作函数
复制代码
1
2
res = importlib.import_module('.sybaseOpr', 'external').select()
  1. 这样的情况,在预加密的py文件会引入一些包,这些包需要在主项目打包构建文件*.spec手动编辑,例如,在我的pyd引入了pypyodbc,那么同时需要在引入pyd文件的项目隐式引入pypyodbc,再如图
    在这里插入图片描述
    在这里插入图片描述
  2. 这样就可以调用pyd正常工作了

最后

以上就是迷人香烟最近收集整理的关于python调用pyd失效的全部内容,更多相关python调用pyd失效内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部