随笔分类 -  python基础

摘要:安装 pip install virtualenv cd 到指定目录 virtualenv 目录名 --python==python3.7 如何激活python 进入scripts目录,执行该文件 给虚拟环境安装django 进入到虚拟环境的scripts的目录 pip install django 阅读全文
posted @ 2023-01-03 22:51 powfu 阅读(17) 评论(0) 推荐(0) 编辑
摘要:isinstance() 用来判断一个实例是否是已知的对象 type() 查看实例的对象 a = 2 print(isinstance(a,int)) print(type(a)) 阅读全文
posted @ 2022-11-14 23:23 powfu 阅读(18) 评论(0) 推荐(0) 编辑
摘要:--反射 可以用过字符串的形式来操作(增删改查)一个对象的属性 有几种方法 getattr()获取 hasattr()判断 setattr()赋值 delattr()删除 class Person(object): def __init__(self,name,age): self.name = n 阅读全文
posted @ 2022-11-14 23:17 powfu 阅读(9) 评论(0) 推荐(0) 编辑
摘要:__call__方法 通过 实例名() 进行调用该方法 class school(): def __init__(self): pass def __call__(self, *args, **kwargs): print('我来自清华') sch = school() sch() class sc 阅读全文
posted @ 2022-11-14 23:09 powfu 阅读(33) 评论(0) 推荐(0) 编辑
摘要:类方法与静态方法 类方法:类方法通过@classmethod装饰器实现,类方法与普通方法的区别是,类方法只能访问类变量,不能访问实例变量。因为添加classmethod后,self不代表实例,而代表类本身,所以类方法可以直接用类去调用,也可以用实例对象去调用。 静态方法:静态方法不能访问类变量,也不 阅读全文
posted @ 2022-11-13 23:32 powfu 阅读(20) 评论(0) 推荐(0) 编辑
摘要:对象继承 单继承:即继承父类的属性方法 super()方法 场景:既想用父类的__init__属性,又想用自己的__init__属性,如果不在子类中加这个函数,直接在子类写__init__,那么会重写父类__init__,相当于覆盖。 以下中在子类的__init__方法中使用 super().__i 阅读全文
posted @ 2022-11-13 22:43 powfu 阅读(15) 评论(0) 推荐(0) 编辑
摘要:OS模块 SYS模块 time模块 datetime模块 阅读全文
posted @ 2022-11-13 22:28 powfu 阅读(15) 评论(0) 推荐(0) 编辑
摘要:闭包: 正常情况下,上例中a变量在return语句后,a变量会被释放。但由于内部inner函数继续调用a变量,导致a变量没有被释放。这种现象叫闭包 def outer(): a=1 def inner(): print(a) return inner #在这并没有执行inner函数。只是返回inne 阅读全文
posted @ 2022-11-13 22:19 powfu 阅读(18) 评论(0) 推荐(0) 编辑
摘要:迭代器: 迭代器是访问可迭代对象的工具,用iter(obj)函数返回对象实例,再用next(it)获取迭代对象的数据。 好处:我们在访问可迭代对象是,加入迭代对象很大,如果直接访问,占用大量内存,通过迭代器,一个一个的访问,减少内存的使用 I = [1,3,5,7,9] it = iter(I) p 阅读全文
posted @ 2022-11-13 22:00 powfu 阅读(26) 评论(0) 推荐(0) 编辑
摘要:生成器 我们在函数中使用yield,这个函数就是生成器函数。 生成器本质上就是一个函数,它记住了上一次返回时在函数体中的位置。对生成器函数的第二次(或第n次)调用,跳转到函数上一次挂起的位置。而且记录了程序执行的上下文。 以下面的案例举例:当主函数f = fib(10)执行时,fib函数不会被立即调 阅读全文
posted @ 2022-11-13 21:54 powfu 阅读(57) 评论(0) 推荐(0) 编辑
摘要:re正则表达式模式 正则的贪婪匹配: python的re正则默认就是采用贪婪匹配,所谓贪婪匹配就是尽可能的匹配更多的字符,在下面案例中(\d+)就是采用贪婪匹配,直接把后面的0全部匹配了,结果0*只能匹配空字符串了。 想要让 “\d+” 采用非贪婪匹配(也就是尽可能少匹配),才能把后面的0匹配出来, 阅读全文
posted @ 2022-11-13 16:40 powfu 阅读(90) 评论(0) 推荐(0) 编辑
摘要:--re.match()方法 语法:re.match(pattern,string,flags) 其中flags表示的标志位。有以下几种 re.I 忽略大小写re.L 表示特殊字符集 \w, \W, \b, \B, \s, \S 依赖于当前环境re.M 多行模式re.S 即为 . 并且包括换行符在内 阅读全文
posted @ 2022-11-13 16:35 powfu 阅读(709) 评论(0) 推荐(0) 编辑
摘要:--map函数的用法 语法map(function,iterable1,iterable2) 说明:function中参数值可以是一个,也可以是多个;iterable代表function运算中的参数值,有几个参数值就传入几个iterable 注意:1.迭代器需要进行列表转换 2.map中如果传入的序 阅读全文
posted @ 2022-11-12 23:26 powfu 阅读(217) 评论(0) 推荐(0) 编辑
摘要:python对内存回收引用几个概念 计数器:当python程序运行时,会根据数据类型的不同找到相对应的结构体,根据结构体中的字段来进行创建相关的数据。然后将对象添加到refchain双向链表中。每个对象中有ob_refcnt就是计数器。默认值为1,当有其他变量引用对象时,引用计数器就会发生变化 a= 阅读全文
posted @ 2022-11-12 22:59 powfu 阅读(24) 评论(0) 推荐(0) 编辑
摘要:在python中,对象的赋值就是简单的引用,a = [1,2,3], b=a, 在上述情况下,a和b是一样的,他们指向同一片内存,b不过是a的别名,是引用,我们可以使用b is a 去判断,返回True b = [1,2,3] a = b print(b is a) 浅拷贝:相当于复制一个杯子,更改 阅读全文
posted @ 2022-11-12 22:44 powfu 阅读(83) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示