我正在攻读编程考试,我需要知道的一个词是确定性的,因为它适用于python。
答案 0 :(得分:5)
如果每次运行时得到相同的结果和行为,程序就是确定性的。这个术语并不特别适用于Python。
答案 1 :(得分:-2)
有一个对此in the Python documentation的引用,这是Google搜索返回的第一个结果。
确定性分析旨在反映监视所有函数调用,函数返回和异常事件的事实,并对这些事件之间的间隔(在此期间执行用户代码)进行精确计时。相反,统计分析(不是由该模块完成)随机采样有效指令指针,并推断出花费的时间。后一种技术传统上涉及较少的开销(因为代码不需要进行检测),但仅提供了时间花费的相对指示。
在Python中,由于在执行期间有一个解释器处于活动状态,因此 存在检测代码不需要确定性 剖析。 Python自动提供一个钩子(可选的回调) 为每个事件。此外,Python的解释性质倾向于 为执行添加如此多的开销,确定性的分析趋于 仅在典型应用程序中添加小的处理开销。该 结果是确定性分析并不那么昂贵 提供有关Python执行的大量运行时统计信息 程序
呼叫计数统计信息可用于识别代码中的错误(令人惊讶 计数),并确定可能的内联扩展点(高呼叫 计数)。内部时间统计可用于识别“热” 应该仔细优化的循环''。累积时间统计 应该用于识别选择中的高级错误 算法。注意这个累积时间的异常处理 profiler允许统计算法的递归实现 直接与迭代实现进行比较。