
Python
waffurpie
这个作者很懒,什么都没留下…
展开
-
Python中“Global”关键字
Global关键字是什么?如何使用?函数定义了本地作用域,而模块定义的是全局作用域。如果想要在函数内定义全局作用域,需要加上global修饰符。 变量名解析:LEGB原则当在函数中使用未认证的变量名时,Python搜索4个作用域[本地作用域(L)(函数内部声明但没有使用global的变量), 之后是上一层结构中def或者lambda的本地作用域(E), 之后是全局作用域...原创 2018-09-06 22:58:58 · 3124 阅读 · 0 评论 -
Python中对“生成器”的理解和运用
假设现在我们需要打印0~10000,可以想到使用for..in循环:n = [i for i in range(0, 1001)]for i in n: print(i)但这样很消耗计算机的内存,因为数字是储存在列表n里的。我们用一个函数解决:def gen(max): n = 0 while n<= max: print(n...原创 2018-09-06 22:52:55 · 327 阅读 · 0 评论 -
对Python中“闭包”的理解
什么是闭包?如果在一个函数的内部定义了另一个函数,外部的我们叫他外函数,内部的我们叫他内函数。在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用。这样就构成了一个闭包。一般情况下,在我们认知当中,如果一个函数结束,函数的内部所有东西都会释放掉,还给内存,局部变量都会消失。但是闭包是一种特殊情况,如果外函数在结束的时候发现有自己的临时变量将来会在...原创 2018-09-06 22:41:54 · 641 阅读 · 0 评论 -
Python中的__new__()方法与实例化
转发自:https://www.cnblogs.com/liunnis/p/4634417.html __new__()是在新式类中新出现的方法,它作用在构造方法建造实例之前。可以这么理解,在Python中存在于类里面的构造方法__init__()负责将类的实例化,而在__init__()启动之前,__new__()决定是否 要使用该__init__()方法,因为__new__()可以调用其他...转载 2018-08-30 18:17:43 · 263 阅读 · 0 评论 -
详解Python中装饰器的实现和使用
我们有函数:def f1():print(‘This is a function.’)有一天我想添加需求,想在函数内部打印时间:def f1():print(time.time()) # 打印unix时间戳print(‘This is a function.’)f1()后来我不只想在该函数实现打印时间的功能,我还想在更多函数中实现它。 我们定义函数:...原创 2018-08-03 13:51:01 · 217 阅读 · 0 评论 -
Python中枚举的使用
from enum import Enumclass Color(Enum): red = 1 orange = 2 yellow = 3print(Color.red) # 直接获取keyprint(Color.orange)print(Color.red.name) # 获取key.nameprint(Color.red.value) # 获取...原创 2018-08-02 19:13:27 · 2865 阅读 · 0 评论 -
使用Python字典映射的方式实现其他语言中的switch...case语句
我们可以想到通过两种方式实现方法1:用if ... else语句,这里不细讲。方法2:用字典映射的方法假设现在我们有一个字典如下:switcher = { 0 : ‘Sunday’, 1 : ‘Monday’, 2 : ‘Tuesday’}day_name = switcher[day]我们可以通过这样的方式获取指定key下面的值,从而实现了swi...原创 2018-08-02 18:02:15 · 747 阅读 · 0 评论 -
Python标准错误类型
BaseException 所有异常的基类SystemExit 解释器请求退出KeyboardInterrupt 用户中断执行(通常是输入^C)Exception 常规错误的基类StopIteration 迭代器没有更多的值GeneratorExit 生成器(generator)发生异常来通知退出StandardError 所有的内建标准异常的基类ArithmeticE...转载 2018-07-18 15:48:03 · 311 阅读 · 0 评论 -
Python中的类与变量
定义类:class Student(): # 居然有括号 name = ‘’ # 定义变量 age = 0 def print_file(self): # 定义函数,”self”是必须的 print(‘name:’ + self.name) # 引用变量也要加self# print_file()使用类的方法(实例化):stud...原创 2018-09-07 00:09:28 · 567 阅读 · 0 评论