计算机科学导论——Udacify函数
练习题错误:
这个是原函数,选出与原函数功能相同的函数:
第一个只是参数名不相同,横着的第二个不对!是因为原函数是根据参数a来进行判断,而第二个是根据b来判断的。第三个是对的。根据a来判断,如果是trueb值传给result,然后输出result的值也就是b的值,如果是false不执行result=b,result原值是a返回result值也就是a值,所以功能和原函数相同。
第四个又绕又扯:
如果test(a)是true,not test(a)就是false,所以if语句不执行,执行else语句,返回b值,(这里与问题,这里不会返回a值吗?)和原函数一样。如果test(a)是false,not test(a)就是true,执行if后面的语句,改变b的值但是返回a的值,所以和原函数还是一样的。
输出乘法表格:
我的练习:
print语句的语法错误。输出的东西要拿+连接,而且数字和字符不能连接,所以 a+'*'+b+'='s是错的。要将数字也转换成字符再相加连接输出。
怎么解决问题:
所有的计算问题都有一个共同点:都有一个或几个输入有一个或几个期望输出。
所以第一点:要搞清楚输入什么东西。
就此题思考,什么样的输入是有效的,like this:
返回一个数和打印一个数的区别,返回会更好一点因为返回了之后还能对这个数做更多的事更多的处理,而打印出来了就只是显示这个数,没有办法做其他的事情。
第二步:考虑输出的内容
第三步:考虑输出和输入内容之间的联系,并且思考作为人类你会怎么计算怎么处理这个问题,然后把解决方式系统化。
字符串和列表的区别:
列表是有顺序的,顺序对于列表来说很重要。
嵌套列表:
列表中的第四个元素的第二个元素。
像这种while循环很容易忘掉要自动增加i这个变量,结果导致循环无限下去得不到结果,(我就忘了,说的就是我这种人....)
这种for循环和while循环是一样的功效。记住这个语句: for e in p: