Python学习经历
从零开始学python
HigginsAndrw
这个作者很懒,什么都没留下…
展开
-
python之面向对象编程(类)
面向对象编程1. 定义核心是对象。对象是"容器",是用来盛放数据与功能的对象的终极奥义就是将程序’‘整合’’程序=数据+功能 学生选课系统 学生的容器=学生的数据+学生的功能 课程的容器=课程的数据+课程的功能2.类与对象类:类也是"容器",用来存放同类对象之间共有的数据和功能类是对象相似数据与功能的集合体所以类中最常见的变量与函数的定义,但是类体中是可以包含其他代码的注意:类体代码是在类定义阶段就会立即执行,会产生类的名称空间#先定义类class Student:原创 2020-12-17 15:10:57 · 213 阅读 · 0 评论 -
python之日志模块
Day 09 日志模块import logginglogging.basicConfig( #1.日志输出位置 a.中端b.文件 filename='D:/pyt/学习/python基础操作/access.log',#不指定,默认打印到中端 #2.如何自定义日志格式 format='%(asctime)s-%(name)s-%(levelname)s-%(module)s', datefmt='%Y-%m-%d %H:%M:%S %p', level=3原创 2020-12-09 09:59:44 · 98 阅读 · 0 评论 -
python之configparser、hash与subprocess模块
Day 09 configparser、hashlib与subprocess模块1. configparser模块加载某种特定格式的配置文件[section1]option[section2]optiion#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>import conf原创 2020-12-08 16:43:08 · 81 阅读 · 0 评论 -
python之json与pickle模块
Day09 Json与pickle模块1. 序列化序列化指的是把内存的数据类型转换成一个特定的格式的内容该格式的内容可用于存储或者传输个其他平台使用反序列化:与序列化相反内存中的数据类型>>>>>序列化>>>>>>>特定的格式(json或pickle格式)内存中的数据类型<<<<反序列化<<<<<<特定的格式(json或pickle格式)为何要用?序列化得到的结原创 2020-12-08 16:42:33 · 92 阅读 · 0 评论 -
python模块之OS与sys以及shutil模块
Day08 OS与sys模块以及shutil模块1.os模块import ospath='D:\\'os.getcwd() #获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") #改变当前脚本工作目录;相当于shell下cdos.curdir #返回当前目录: ('.')os.pardir #获取当前目录的父目录字符串名:('..')os.makedirs('dirname1/dirname2') #可生成多层递归目录os.remove原创 2020-12-07 21:43:30 · 95 阅读 · 0 评论 -
python模块之random模块
Day 08 Random模块随机数模块import randomrandom.random()#(0,1)之间的小数random.randint(1,3)#[1,3]之间整数random.randrange(1,3)#[1,3)之间整数random.choice([1,'23',[4,5,6]])#随机取列表或字典取random.sample(1,'23',[4,5],2)#列表元素任意两个组合,2是指定的可以换random.uniform(1,3)#(1,3)之间的小数item=[1,原创 2020-12-07 20:13:07 · 62 阅读 · 0 评论 -
python模块之时间模块
Day 08 模块之时间模块1. time模块时间的三种模式时间戳:1970年至今的秒数(用于时间间隔的计算)按照某种格式显示的时间(显示时间)结构化的时间(用于单独获取时间的某一部分)import time#时间戳print (time.time())#格式化print(time.strftime('%Y-%m-%d %H:%M:%S %p'))#结构化的时间print(time.localtime())#time.struct_time(tm_year=2020, tm_m原创 2020-12-07 20:11:28 · 86 阅读 · 0 评论 -
python之模块简介
Day08 - 模块1.模块1.1定义模块就是一系列功能的集合体,分为三大类(内置模块、第三方模块、自定义模块)一个python文件就是一个模块,文件名叫m.py模块名叫m模块分为四种形式:使用python编写的.py文件已被编译为共享库或DLL的C或C++扩展把一系列模块组织到一起的文件夹(注:文件夹下有–init–.py文件,该文件称为包)使用C编写并链接到python解释器的内置模块为何要有模块? 1.内置与第三方模块拿来就用,无需定义,这种拿来主义,可以极大地提高自己的开发原创 2020-12-07 14:32:24 · 161 阅读 · 0 评论 -
python之函数递归调用与函数式
Day07 -函数递归函数递归调用:是函数嵌套调用的一种特殊形式具体指的是:在调用一个函数的过程中有直接或间接地调用到本身递归层级最大1000层,可以设置更大但不建议import syssys.getrecursionlimit()#查看sys.setrecursionlimit(num)#设置#调用本身def f1(): print('是我是我还是我') f1()f1()#间接调用def f1(): print('f1>>>>')原创 2020-12-06 13:17:34 · 247 阅读 · 1 评论 -
python函数之装饰器
Day07 -装饰器及表达式1.装饰器必备知识点# *args/**kwargs2.装饰器2.1什么是装饰器 定义一个函数(或类),该函数是用来为其他函数的添加额外的功能2.2 为何要用 开放封闭原则: 开放:指的是对拓展功能开放 封闭:指的是对修改源代码是封闭的 装饰器就是在不修改被装饰器对象源代码以及调用方式的前提下为被装饰对象添加新功能3.语法糖让你开心的语法再被装饰对象正上方的单独一行写@装饰器名字将原函数属性赋值给wrapper函数from func原创 2020-12-06 09:52:45 · 178 阅读 · 0 评论 -
python函数
Day06 -函数1.基础1.1为何用函数组织结构不清晰,可读性差代码冗余可维护性、扩展性差1.2如何用函数1)先定义#3种定义#基本:def 函数名(self1,self2): ''' 文档描述(推荐写) ''' 函数体 return 值#方法一(无参函数):def func(): passfunc()#方法二(有参函数):def func2(x,y): passfunc2(x,y)#方法三(空函数,函数体代码为原创 2020-12-05 16:04:18 · 69 阅读 · 0 评论 -
python之文件操作2
Day05-文件21.以字节数读取with open('文件路径',rb) as f: while True: res=f.read(1024)#以字节读取 if len(res)==0: break2.其他方法2.1b模式下read指示参数readline()#读一行with open()as f: while True: line=f.readline()readlines()#从当前开始读全部行。返回结果列表2.2写相关操作操作f.writelines()#原创 2020-12-05 16:03:08 · 90 阅读 · 0 评论 -
python之文件操作1
Day 04 - 文件1.open控制文本读写内容的模式:t和b(不能单独使用,必须配合r/w/a连用)t:默认格式 1.读写都是以str(unicode)为单位的 2.只针对文本文件 3、必须指定字符编码encoding=‘utf-8’b:bytes类型(二进制) 1.读写以bytes类型 2.针对所有文件类型 3.必须不指定字符编码open(r'D:\pyt\学习\Day_01\文件.py','rb')with 上下文管理with open ('D:\pyt\学习原创 2020-12-05 16:02:33 · 67 阅读 · 0 评论 -
python数据类型之集合
Day 03-集合集合满足三个条件1.元素必须是不可变类型2.无序3.集合内元素不重复1.关系运算friends1 = {"zero","kevin","jason","egon"} # 用户1的好友们 friends2 = {"Jy","ricky","jason","egon"} # 用户2的好友们friends1&friends2#求交集/.intersection()friends1|friends2#求并集/.union()friends1-friends2#只求f原创 2020-12-05 16:01:56 · 87 阅读 · 0 评论 -
python数据类型之字典
Day 03-字典(dict)#创建字典d={}#默认定义出空字典d=dict(x=1,y=2)#d{'x'='1','y'='2'}d.fromkeys(keys,None)#快速初始化一个字典1.优先掌握1.1 取值(可存可取)key存在就修改,key不存在则添加1.2 长度1.3 成员运算1.4 删除d={}d.pop(key)#根据key删除,返回删除key对应的值d.popitem()#随即删除,返回元组(key,value)1.5 键(key)/值(value)/原创 2020-12-05 16:01:16 · 68 阅读 · 0 评论 -
python数据类型之列表
Day 03-列表1.优先掌握1.1 按照索引取值(可存可取)索引存在则修改对应值,若不存在则报错1.2 切片(相当于浅copy)具体方法同字符串1.3 长度1.4 成员运算1.5 追加list=[]list.append()#列表最后追加list.insert(0,'Higgins')#第一个为位置,第二个为要插入的值list.extend(itertable)#可迭代对象1.6 删除del list[1]#公共删除方法,没有返回值list.pop()#根据索引删,默认从最原创 2020-12-05 16:00:32 · 66 阅读 · 0 评论 -
python数据类型之字符串
Day 03-字符串1.数字类型1.1 int整型bin()#十进制转二进制0boct()#十进制转八进制0ohex()#十进制转十六进制0xb#二进制转十进制int('0b1011',2)#111.2 float类型1.3 虚数类型1.4 长整型(python2)2.字符串2.1优先掌握方法2.1.1按照索引取值(只能取)msg='Hello World'#正向取print(msg[0])#'H'#反向取print(msg[-1])#'d'2.1.2 切片#顾头原创 2020-12-05 15:59:55 · 98 阅读 · 0 评论 -
Python前期基础2
Day021.可变不可变类型可变类型(1)值改变,id不变,证明改变的是原值,证明原值是可以改变的list、dict是可变类型不可变类型值改变,ID也变,证明是产生了新的值,压根没有改变原值,证明原值是不可以改变的int、float、str、bool 是不可变类型2.逻辑运算符(偷懒原则、短路运算)优先级not>and>or2.1成员运算符in/not in 判断一个小的变量是否在大变量中(字典是判断key值)2.2 身份运算(is)详见python前期基础13.原创 2020-12-05 15:44:38 · 67 阅读 · 0 评论 -
pyhton前期基础1
基础知识Python 解释器可不止一种,有 CPython、IPython、Jython、PyPy 等。顾名思义,CPython 就是用 C 语言开发的了,是官方标准实现,拥有良好的生态,所以应用也就最为广泛了。而 IPython 是在 CPython 的基础之上在交互式方面得到增强的解释器(http://ipython.org/)。Jython 是专为 Java 平台设计的 Python 解释器(http://www.jython.org/),它把 Python 代码编译成 Java 字节码执行。原创 2020-12-05 15:33:45 · 89 阅读 · 0 评论