摘要:1. 作用域和命名空间命名空间(namespace)就是一个从名称到对象的映射。命名空间的一些实例:内置名称集(函数,像abs(),和内置异常名称),一个模块中的全局名称,函数调用时的局部名称。命名空间在不同的时刻创建,并且具有不同的生命周期。包含内置名称的命名空间在Python解释器启动时即被创建,并且不会被删除。模块的全局命名空间在模块定义被读取时即被创建,通常模块的命名空间会一直保存到解释器退出。[总结]一个模块的引入,函数的调用,类的定义都会引入命名空间,函数中的再定义函数,类中的成员函数定义会在局部namespace中再次引入局部namespace。作用域就是一个Python程序可以
阅读全文
摘要:两种不同类型的错误:语法错误和异常1. 语法错误语法错误,也被称作解析错误:>>> while True print('Hello world')SyntaxError: invalid syntax2. 异常运行期间检测到的错误称为异常,并且程序不会无条件的崩溃。>>> 10*(1/0)Traceback (most recent call last): File "", line 1, in 10*(1/0)ZeroDivisionError: division by zero>>> 4+spam*3
阅读全文
摘要:1. 格式化输出三种输出值的方法:表达式语句print()函数使用文件对象的write()方法两种方式格式化输出:由自己处理整个字符串,通过使用字符串切割和连接操作创建任何想要的输出形式使用str.formate()方法将值转换为字符串的方法:将它传递给repr()函数将它传递给str()函数>>> s='Hello, world.'>>> str(s)'Hello, world.'>>> repr(s)"'Hello, world.'">>> str(0
阅读全文
摘要:1. 模块是将定义保存在一个文件中的方法,然后在脚本中或解释器的交互实例中使用。模块中的定义可以被导入到其他模块或者main模块。模块就是一个包含Python定义和语句的文件。文件名就是添加了.py扩展名的模块名。在当前目录下建立一个包含以下内容的fibo.py文件:ef fib(n): a,b=0,1 while b>> import fibo>>> fibo.fib(100)1 1 2 3 5 8 13 21 34 55 89 >>> fibo.fib2(100)[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89]&g
阅读全文
摘要:1. 深入列表:所有的列表对象方法list.append(x): 在列表的末尾添加一个元素list.extend(L): 在列表的末尾添加一个指定列表的所有元素list.insert(i,x): 在指定位置插入一个元素list.remove(x): 删除列表中值为x的第一个元素,如果不存在这样的元素则引发错误list.pop(i): 删除列表中指定位置元素并返回它(指元素值)。如果省略索引,a.pop()会删除并返回列表中的最后一个元素list.index(x): 返回列表中值为x的第一个元素的索引,如果不存在这样的元素则引发错误list.count(x): 返回列表中元素x出现的次数list
阅读全文
摘要:在Python中,可以定义包含若干参数的函数,这里有几种可用的形式,也可以混合使用:1. 默认参数最常用的一种形式是为一个或多个参数指定默认值。>>> def ask_ok(prompt,retries=4,complaint='Yes or no Please!'): while True: ok=input(prompt) if ok in ('y','ye','yes'): return True if ok in ('n','no','nop','n
阅读全文
摘要:1. 斐波那契数序列>>> a,b=0,1>>> a0>>> b1>>> while b>> a,b=0,1>>> while b>> x=int(input("Please enter an integer: "))Please enter an integer: 42>>> if x>> a=["cat","window","defenstrate"]>>&
阅读全文