Python中文
首页
教程
问答
标签
搜索
登录
注册
在python中存储和使用大型文本文件的最佳方法
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在为我用python编写的一个令人困惑的克隆创建一个网络服务器,它接受用户、解算棋盘并为玩家输入打分。我使用的字典文件是1.8MB(ENABLE2K字典),我需要它对几个游戏求解器类可用。现在,我有了它,这样每个类就可以逐行遍历文件并生成一个哈希表(关联数组),但是我实例化的解算器类越多,它占用的内存就越多。在</p> <p>我想做的是导入字典文件一次,并传递给每个求解器实例,因为他们需要它。但是最好的办法是什么?我应该在全局空间中导入字典,然后在solver类中以globals()['dictionary']的形式访问它吗?还是应该导入字典,然后将其作为参数传递给类构造函数?其中一个比另一个好吗?还有第三种选择吗?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>尽管在这一点上它本质上是一个单例的,但反对全局变量的常见论点仍然适用。对于pythonic singleton替代品,请查找“borg”对象。在</p> <p>这是唯一的区别。一旦dictionary对象被创建,除非显式执行深度复制,否则只在传递时绑定新引用。只要每个解算器实例不需要私有副本进行修改,它就可以集中构建一次,并且只构建一次。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
9 回答
无法使用Django\u mssql\u后端迁移到外部hos
6 回答
无法使用Django&Python3.4连接到MySql
5 回答
无法使用Django+nginx上载媒体文件
7 回答
无法使用Django1.6导入名称模式
8 回答
无法使用Django1.7和mongodb登录管理站点
3 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
10 回答
无法使用Djangockedi验证CBV中的字段
10 回答
无法使用Djangocketditor上载图像(错误400)
10 回答
无法使用Djangocron进行函数调用
6 回答
无法使用Djangofiler djang上载文件
3 回答
无法使用Djangokronos
2 回答
无法使用Djangomssql provid
9 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
8 回答
无法使用Djangomssq迁移Django数据库
9 回答
无法使用Djangonox创建用户
3 回答
无法使用Djangopyodb从Django查询SQL Server
3 回答
无法使用Djangopython3ldap连接到ldap
3 回答
无法使用Djangoredis连接到redis
9 回答
无法使用Django中的FK创建新表
1 回答