当前位置: 首页 > 面试题库 >

Python的替代方法

范安歌
2023-03-14
问题内容

我目前有这样的代码:

cache = 1
def foo():
    global cache
    # many
    # lines
    # of code
    cache = 2

但是,这可能会在将来导致难以发现的错误,因为读者可能不会注意到global cache上面出现的错误cache = 2。或者,贡献者可能会错误地添加def bar(): cache = 2而忘记添加global cache

我如何避免这种陷阱?


问题答案:
class Cache:
     myvar = 1

def foo():
    Cache.myvar = 2

这样,Cache.myvar实际上是一个“全局”。可以从任何地方对其进行读写。

与字典的替代方法相比,我更喜欢这种方法,因为它可以自动完成变量名。



 类似资料:
  • 问题内容: PHP_excel是否有其他选择可以以自定义格式“导出到XLSX / XLS”文件? 问题答案: 我编写了一个非常简单的类,用于导出到“ Excel XML”(又名SpreadsheetML)。对于最终用户而言,它不如XSLX方便(取决于文件扩展名和Excel版本,他们可能会收到警告消息),但使用起来比XLS或XLSX容易得多。

  • 问题内容: 对于像 制作视频的人相信 在许多情况下,冬眠过大 基本的sql是一种很好的语言,它可以将很多冬眠抽象化 我想听听他们如何比较,以及每个人的优缺点。 问题答案: 在这里,您可以找到Java ORM和持久性解决方案的详尽列表。并非所有以下Hibernate / JPA方法都遵循,其中某些方法在设计上相当容易。 当然,该站点上没有列出解决方案,例如带有模板的Spring JDBC等 。对于需

  • 我一直在通过Netbeans使用CodeNameOne设计一个应用程序,并遇到了一些问题,特别是“找不到符号”编译错误。经过进一步的研究,我发现这是由于CNO不支持某些库/杂项。 我想知道是否有其他方法可以使用以下库/执行任务: (从文件读取)导入java.io.file;符号:类文件位置:package java.io (抛出FileNotFoundException)导入java.io.Fil

  • 本文向大家介绍基于Python中random.sample()的替代方案,包括了基于Python中random.sample()的替代方案的使用技巧和注意事项,需要的朋友参考一下 python中random.sample()方法可以随机地从指定列表中提取出N个不同的元素,但在实践中发现,当N的值比较大的时候,该方法执行速度很慢,如: numpy random模块中的choice方法可以有效提升随机

  • 问题内容: 在Python 3中取消了通过删除以下命令快速加载脚本的所有简便方法 我是否有明显的替代品? 问题答案: 采用

  • 问题内容: 我到处都看到应通过以下方式调用超类方法的示例: 这样做有什么不利之处吗? 问题答案: 请考虑以下情况: 因此,这些类形成了一个所谓的继承钻石: 运行代码会产生 不好,因为跳过了s 。其原因是因为的调用的直接。 的目的是解决继承钻石。如果您取消评论 和注释掉 该代码产生了更令人满意的结果: 现在,所有方法都被调用。请注意,在当时你定义你可能会 认为 这是与调用,但是你错了。在上述情况下,