笨方法34-39

习题 34: 访问列表的元素


记住: 序数ordinal == 有序,以 1 开始;基数cardinal == 随机选取, 以 0 开始。


习题 35: 分支和函数


习题 36: 设计和调试


If  语句的规则
1.  每一个“if 语句”必须包含一个  else .
2. 如果这个  else 永远都不应该被执行到,因为它本身没有任何意义,那你必须在
else 语句后面使用一个叫做 die 的函数,让它打印出错误信息并且死给你看,这
和上一节的习题类似,这样你可以找到很多的错误。
3. “if 语句”的嵌套不要超过 2 层,最好尽量保持只有 1 层。 这意味着如果你在 if 里
边又有了一个 if,那你就需要把第二个 if 移到另一个函数里面。
4. 将“if 语句”当做段落来对待,其中的每一个  if, elif, else 组合就跟一个段落
的句子组合一样。在这种组合的最前面和最后面留一个空行以作区分。
5. 你的布尔测试应该很简单,如果它们很复杂的话,你需要将它们的运算事先放到一
个 变量里,并且为变量取一个好名字


调试(debug) 的小技巧
1.  不要使用 “debugger”。 Debugger 所作的相当于对病人的全身扫描。你并不会得
到某方面的有用信息,而且你会发现它输出的信息态度,而且大部分没有用,或者
只会让你更困惑。
2. 最好的调试程序的方法是使用  print 在各个你想要检查的关键环节将关键变量打
印出来,从而检查哪里是否有错。
3. 让程序一部分一部分地运行起来。不要等一个很长的脚本写完后才去运行它。写一
点,运行一点,再修改一点。


习题 37: 复习各种符号


del:用于删除list列表的一个或连续的多个元素,也可以用来删除变量


assert:assert语句用来声明某个条件是真的。例如,如果你非常确信某个你使用的列表中至少有一个元素,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。当assert语句失败的时候,会引发一个AssertionError。


yield:包含了关键字"yield"的函数就不是普通的函数。当含有这个关键字的函数被调用的时候,这个函数在遇到yield的时候会停止运行,并且返回一个迭代器(iterator)。每次请求一个值,就会执行生成的代码。直到遇到一个yield或者return。


exec:exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句


exec语句用来执行储存在字符串或文件中的Python语句。
eval语句用来计算存储在字符串中的有效Python表达式。

我们可以使用try..except语句来处理异常。我们把通常的语句放在try-块中,而把我们的错误处理语句放在except-块中。


**两个乘号就是乘方,比如2**4,结果就是2的4次方,结果是16
一个乘号*,如果操作数是两个数字,就是这两个数字相乘,如2*4,结果为8
*如果是字符串、列表、元组与一个整数N相乘,返回一个其所有元素重复N次的同类型对象,比如"str"*3将返回字符串"strstrstr"
如果是函数定义中参数前的*表示的是将调用时的多个参数放入元组中,**则表示将调用函数时的关键字参数放入一个字典中


习题 38: 阅读代码


习题 39: 列表的操作


print stuff[-1]  
print stuff.pop() 
print ' '.join(stuff) 
print '#'.join(stuff[3:5])
' '.join(things)其实是join(' ',things)。
' '.join(things)可翻译成用' '连接(join)things;
join(' ',things)可翻译成为' '和things调用join函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值