魔术方法
今天我们学习魔术方法,听这个名字我们可能完全不知道这是个什么,其实魔术方法就是在我们定义的类中定义一些”不一般”的方法,使类的使用更方便、完善、健壮,是python特有的方法,一般都是前后包含两个下划线__的方法称为魔术方法,例如__new__。 基本魔术方法有哪些 __new__:是在一个对象实例化的时候所调用的第一个方法,用来创建类并返回这个类的实例; class Student:
面向对象
今天要学习的是面向对象,Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的,我们先一起来看一下类和对象的定义~ 1.类和对象的定义class 类的名称: 语句块 # 举例说明 class Student: num = 100 def showNum(self): return 200
正则表达式
1.什么是正则表达式(Regular Expression) 正则表达式是一个特殊的字符序列,用于检查一个字符串是否与某种模式匹配; 在Linux操作系统上,正则表达式可以应用的命令有:grep、sed、awk; 2.常用的元字符. : 匹配任意一个字符,除了换行符号,换行符使用[.\n]模式; \:转义字符,使后一个字符改变原来的意思; *:重复匹配0次或更多次; *?:非贪婪匹
命令行参数解析
1.argparse模块简介 argparse是python标准库里面用来处理命令行参数的库; 大多数情况下,脚本很可能需要多个参数,而且每次参数的类型用处各不相同,那么这个时候在参数前添加标签表明参数的类型和用途便十分有用,而利用argparse模块可以很方便得实现这一目的; 2.argparse模块的使用步骤# 导入模块 import argparse # 此函数作用为:自定
序列化与反序列化
今天学习序列化相关知识,首先我们需要了解一下什么是序列化和反序列化,然后学习如何序列化写入文件,读取文件序列化内容。然后简单的了解一下Json模块和msgpack模块的使用~ 1.什么是序列化与反序列化? 序列化:将内存中的数据转换为字节序列保存到文件; 反序列化:将字节序列的文件中的内容恢复到内存中; 2.pickle模块(1)如何序列化写入文件: import pickle l
文件操作修改模块
今天主要学习os模块、pathlib模块、sys模块、shutil模块、copy模块的操作~ 1.使用OS模块进行path路径操作 操作的语法为os.path.方法名(); import os # 首先导入os模块 abspath()方法:获取当前文件的全路径,所带参数为file; file_path = os.path.abspath(__file__) # 获取当前文件的全路径
PythonIO模块的使用
今天学习IO模块的使用,主要分为StringIO的使用和BytesIO的使用~ 1.StringIO的使用 # 类似文件的缓冲区 from io import StringIO cache_file = StringIO() print(cache_file.write('hello world')) # 11 print(cache_file.seek(0)) # 0
Python文件操作
说到文件操作,我们就想到了读写操作,在python中对于文件操作就是读和写,访问文件的模式有两种,文本模式和二级制模式。 1.文件打开# 现创建一个hello.txt文件,然后加入内容hello world f = open(file='./hello.txt') result = f.read() print(result ) #输出: hello world f.close()
Python参数注解
1.函数定义的弊端 python是动态语言,变量随时可以被赋值,且能赋值为不同的类型,动态语言很灵活,但是这种特性也是弊端;难发现:由于不做任何类型检查,直到运行期问题才显现出来,或者线上运行时才能暴露出问 题 ;难使用:函数的使用者看到函数的时候,并不知道你的函数的设计,并不知道应该传入什么类 型的数据;解决办法:可以通过增加文档Documentation String(帮助文档)和使用函数参
Python装饰器
1.什么是装饰器 装饰器其实就是一个闭包,把一个函数当做参数然后返回一个替代版函数; 装饰器的功能在于对函数或类功能的增强,这是一种低耦合的功能增强; 2.装饰器特点 开放封闭原则,即对扩展是开放的,对修改时封闭的; 装饰器本质可以是任意可调用的对象,被装饰的对象也可以是任意可调用对象; 装饰器的功能是在不修改被装饰器对象源代码以及被装饰器对象的调用方式的前提下为其扩展新功能;
高阶函数
今天主要学习了Python中sorted,filter, map 三个高阶函数,还了解了一下函数的柯里化; 1.什么是高阶函数 在数学中高阶函数又称算子(运算符)或泛函,包含多于一个箭头的函数,语法为:y = f(g(x));在python中,一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归),满足其一则为高阶函数; def way1(
Python生成器函数
1.生成器 在 Python 中,一边循环一边计算的机制,称为生成器(Generator);生成器是一个返回迭代器的函数,只能用于迭代操作; 2.什么是生成器函数 生成器是Python中的一个对象,对这个对象进行操作,可以依次生产出按生成器内部运算产生的数据; 生成器函数指的是函数体中包含yield关键字的函数(yield就是专门给生成器用的return); 生成器可以通过生成器表达式和
递归函数与匿名函数
1.什么是递归函数def fib(n): return 1 if n < 2 else fib(n-1) + fib(n-2) n = 20 for i in range(n): print(fib(i), end=' ') #输出:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 676
Python函数的返回值与嵌套函数
1.什么是返回值 返回值指的是函数返回的结果; return执行完毕后面的语句将不会再执行; def add(x, y): print(x, y) #输出:10 20 return x + y # 返回值, return以后的语句将不会再执行 print(x) print(y) add(10,20) 如果一个函数里面有两个ret
Python函数
1.函数的简介 函数的意义:由函数名称,参数列表和若干语句组成的语句块; 函数的作用:对代码的一个封装,减少冗余代码,代码复用; 函数的分类:内建函数、 库函数、第三方库函数; 函数都是可调用对象; 2.函数的使用def add(x,y): print(x,y) add(10,20) #输出:10 20 通过def 函数名称(参数):代码块的方式定义函数,代码块部
Python解析式与生成器
1.列表解析式 列表解析式是将数据全部存储在内存中一并返回; # 将lst1的元素+100,导入到lst2 lst1 = list(range(10)) lst2 = [] for item in lst1: lst2.append(item+100) print(lst2) #输出:[100, 101, 102, 103, 104, 105, 106, 107, 108
HTML基础知识之DIV
一、HTML 块元素 大多数 HTML 元素被定义为块级元素或内联元素;元素在浏览器显示时,通常会以新行来开始和结束;如:<h1>,<p>,<ul>,<table>,<div>等标签; 二、HTML 内联元素 内联元素在显示时通常不会以新行开始;如:<b>, <td>, <a>,<img&g
CSS基础知识(一)
一、什么是CSS CSS全称为层叠样式表(Cascading Style Sheets),通常又称为风格样式表(Style Sheets),它是用来进行网页设计的; 在网页制作时采用CSS技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制,只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式; 二、CSS的优势 内容与表
HTML基础知识之表单
表单的用途非常广泛,比如电子邮箱、用户注册登录、网上搜索等,简单来说,表单是一个将用户信息阻止起来的容器;一、表单标签及属性<form>标签就是表单标签,该标签用于在网页中创建表单区域,属于一个容器标签;action:表单的属性之一,用于指示服务器上处理表单输出的程序;method:表单属性之一,此属性告诉浏览器如何将数据发送给服务起,指定向服务器发送数据的方法,是用post或者get
HTM之列表和表格的使用
一、HTML与XHTML的区别(1)在XHTML 中标签名称必须小写,在HTML 中标签名称既可以小写也可以大写;(2)在XHTML 中标签必须封闭,在HTML中标签可以不成对出现;(3)在XHTML 中标签必须严格嵌套,HTML对标签嵌套没有严格规定;(4)在XHTML 中属性名称必须小写,在HTML 中也一样;(5)在XHTML 中标签必须用双引号引起来,HTML中可以不用; 二、特殊符号