计算原理课堂笔记(二)

计算原理课堂笔记(二)

关于测试: And so the best piece of advice I have about testing is the following. Don’t write your code and then test. Write a little bit of code. Test. Write a little bit of code. Test. Write a little bit of code.

这里写图片描述
测试模块poc_simpletest

<python>
"""
Test suite for format function in "Stopwatch - The game"
"""

import poc_simpletest

def run_suite(format_function):
    """
    Some informal testing code
    """

    # create a TestSuite object
    suite = poc_simpletest.TestSuite()

    # test format_function on various inputs
    suite.run_test(format_function(0), "0:00.0", "Test #1:")
    suite.run_test(format_function(7), "0:00.7", "Test #2:")
    suite.run_test(format_function(17), "0:01.7", "Test #3:")
    suite.run_test(format_function(60), "0:06.0", "Test #4:")
    suite.run_test(format_function(63), "0:06.3", "Test #5:")
    suite.run_test(format_function(214), "0:21.4", "Test #6:")
    suite.run_test(format_function(599), "0:59.9", "Test #7:")
    suite.run_test(format_function(600), "1:00.0", "Test #8:")
    suite.run_test(format_function(602), "1:00.2", "Test #9:")
    suite.run_test(format_function(667), "1:06.7", "Test #10:")
    suite.run_test(format_function(1325), "2:12.5", "Test #11:")
    suite.run_test(format_function(4567), "7:36.7", "Test #12:")
    suite.run_test(format_function(5999), "9:59.9", "Test #13:")

    suite.report_results()
<python>

run_suite()函数封装了测试代码

<python>
"""
Format function for a stopwatch
"""

import poc_format_testsuite

def stopwatch_format(ticks):
    """
    Convert tenths of seconds to formatted time
    """

    minutes = ticks // 600
    # minutes = ticks // 60
    tens_seconds =  (ticks // 100) % 6
    seconds = (ticks // 10) % 10
    tenths = ticks % 10
    return str(minutes) + ':' + str(tens_seconds) + \
           str(seconds) + '.' + str(tenths)

# run the testing suite for our format function
poc_format_testsuite.run_suite(stopwatch_format)
<python>

import poc_format_testsuite导入测试代码

<python>
# Create a rectangular grid using nested list comprehension 
# Inner comprehension creates a single row
EXAMPLE_GRID = [[row + col for col in range(GRID_WIDTH)]
                           for row in range(GRID_HEIGHT)]
<python>

使用嵌套列表解析创建多元元组、

Remember that the “Science” part of Computer Science corresponds primarily to Mathematics.
记住,计算机科学中的“科学”部分主要指的是数学

这里写图片描述

You can actually create all of the lines that you would need to merge for any direction, so that when you get into the move function you just look them up in a dictionary
使用偏置字典在move function之前考虑方向
这里写图片描述
增加STR函数用于调试

But, if you do five by four instead of four by four, and you run it in the GUI, you’re immediately going to understand, hey did this work correctly or not?
使用矩形网络

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值