全局数据帧好坏

2024-04-19 13:39:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个程序,可以将数百万行加载到数据帧中,并将它们声明为全局的,这样我的函数(>;50)就可以像以前使用数据库一样使用它们。我读到使用globals是一个不好的方法,并且由于它的内存映射,使用globals的速度较慢。你知道吗

我想问一下,如果全球化是不好的,好的做法是什么?在函数和嵌套函数之间传递>;10个数据帧似乎也不是很干净的代码。 最近,由于不同的函数也会更新不同的单元格,从dataframes中插入、删除数据,程序变得越来越笨拙,因此我考虑将dataframes包装到一个类中,使其更易于管理。这是个好主意吗?你知道吗


Tags: 数据方法函数内存代码gt程序数据库
1条回答
网友
1楼 · 发布于 2024-04-19 13:39:40

是的。不要使用globals,而是应该将数据包装到一个对象中,并将该对象传递给函数(参见依赖注入)。你知道吗

将其包装到对象中而不是使用全局将:

  1. 允许您对代码进行单元测试。这绝对是最重要的原因。使用globals将使测试代码变得非常困难,因为由于其全局性,不可能单独测试任何代码。你知道吗
  2. 安全地对代码执行操作,而不必担心随机的可变性错误
  3. 停止可怕的并发错误的发生,因为一切都是全球性的。你知道吗

相关问题 更多 >