本文整理匯總了Python中system.System.iterate_until_halt方法的典型用法代碼示例。如果您正苦於以下問題:Python System.iterate_until_halt方法的具體用法?Python System.iterate_until_halt怎麽用?Python System.iterate_until_halt使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類system.System
的用法示例。
在下文中一共展示了System.iterate_until_halt方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: test_iterate_until_halt_max
# 需要導入模塊: from system import System [as 別名]
# 或者: from system.System import iterate_until_halt [as 別名]
def test_iterate_until_halt_max(self):
rules = [
Rule("A", 0, 1, True, "B"),
Rule("B", 0, 1, False, "A"),
Rule("C", 0, 1, False, "B"),
Rule("A", 1, 1, False, "C"),
Rule("B", 1, 1, True, "B"),
Rule("C", 1, 1, True, "HALT"),
]
m = Machine(rules)
t = Tape()
s = System(m, t)
with self.assertRaises(DidNotHalt):
s.iterate_until_halt(max_steps=10)
self.assertNotEqual(s.machine.state, "HALT")
示例2: test_iterate_until_halt
# 需要導入模塊: from system import System [as 別名]
# 或者: from system.System import iterate_until_halt [as 別名]
def test_iterate_until_halt(self):
rules = [
Rule("A", 0, 1, True, "B"),
Rule("B", 0, 1, False, "A"),
Rule("C", 0, 1, False, "B"),
Rule("A", 1, 1, False, "C"),
Rule("B", 1, 1, True, "B"),
Rule("C", 1, 1, True, "HALT"),
]
m = Machine(rules)
t = Tape()
s = System(m, t)
steps = s.iterate_until_halt()
self.assertEqual(steps, 14)
state, contents, index = s.get_state_tape_contents_and_head_index()
self.assertEqual(state, "HALT")
self.assertEqual(contents, 6 * [1])
self.assertEqual(index, 4)