笨办法学python的笔记之七(ex37 复习各种符号)

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">复习各种符号</span>


Keywords(关键字)

and
as
摘自 http://zhoutall.com/archives/325 

python使用了with-as的语法。当python执行这一句时,会调用__enter__函数,然后把该函数return的值传给as后指定的变量。之后,python会执行下面do something的语句块。最后不论在该语句块出现了什么异常,都会在离开时执行__exit__。

我们如果要打开文件并保证最后关闭他,只需要这么做:
with open("x.txt") as f:
    data = f.read()
    do something with data



with-as表达式极大的简化了每次写finally的工作,这对保持代码的优雅性是有极大帮助的。
<pre name="code" class="python">try:
    with open( "a.txt" ) as f :
        do something
except xxxError:
    do something about exception
 
assert
转载自 http://blog.sina.com.cn/s/blog_76e94d210100vz37.html
assert语句用来声明某个条件是真的。
如果你非常确信某个你使用的列表中至少有一个元素,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。
当assert语句失败的时候,会引发一AssertionError。
>>> mylist = ['item']
>>> assert len(mylist) >= 1
>>> mylist.pop()
'item'
>>> assert len(mylist) >= 1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AssertionError
>>>
break 
class
摘自 http://blog.chinaunix.net/uid-22521242-id-4017965.html

把具有相同属性和方法的对象归为一个类(
class
continue 
def
del
摘自 http://blog.sina.com.cn/s/blog_76e94d210100vxtk.html

del用于list列表操作,删除一个或者连续几个元素。
elif
else
except
摘自 http://www.pythontab.com/html/2013/pythonjichu_0204/210.html

如果你在写python程序时遇到异常后想进行如下处理的话,一般用try来处理异常,后接except
exec
摘自 http://blog.csdn.net/phay/article/details/7277058

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

>>> exec 'print "Hello World"'
Hello World
finally
for
from
global
摘自 http://blog.csdn.net/nilxin/article/details/1523898

全局变量的使用是为了使我们在一个类或一个函数中使用由函数返回的变量,并进行复杂的计算过程而使用。而对于一个函数的局部变量,则只在一个函数内部是可使用的,而如果需要跨越不同的函数或者类,则需要在基础函数中返回一个该值,在下一个函数中运行其方法才能获取该值进行计算。如果程序不复杂在一个类中可以解决,全局变量会为我们节省不少的时间,以及内存空间。
if
import
in
is
lambda
摘自 http://www.pythonfan.org/thread-1915-1-1.html

lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值。lambda语句构建的其实是一个函数对象,见证一下:
g = lambda x : x**2
print g
<function <lambda> at 0x00AFAAF0>
not
or
pass
print
raise
return
try
while
with
yield
摘自 http://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/

一个带有 yield 的函数就是一个 generator,它和普通函数不同,生成一个 generator 看起来像函数调用,但不会执行任何函数代码,直到对其调用 next()(在 for 循环中会自动调用 next())才开始执行。虽然执行流程仍按函数的流程执行,但每执行到一个 yield 语句就会中断,并返回一个迭代值,下次执行时从 yield 的下一个语句继续执行。看起来就好像一个函数在正常执行的过程中被 yield 中断了数次,每次中断都会通过 yield 返回当前的迭代值。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值