Python自学
MyLight1109
Blog: mylight1109.cn
Github: github.com/Karl1109
展开
-
[Python]自学笔记39:requests模块
1.以get请求方式为例import requestsresponse = requests.get('http://www.baidu.com')print(response.status_code) #打印状态码print(response.url) #打印请求urlprint(response.headers) #打印头部信息print(response.cooki...原创 2020-04-19 20:44:30 · 182 阅读 · 0 评论 -
[Python]自学笔记38:一只爬虫的自我修养5:正则表达式
https://fishc.com.cn/forum.php?mod=viewthread&tid=57073&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403转载 2020-04-19 15:41:34 · 931 阅读 · 0 评论 -
[Python]自学笔记37:论一只爬虫的自我修养4:爬取图片
import urllib.requestimport osdef url_open(url): #打开一个链接,并返回html req = urllib.request.Request(url) req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KH...原创 2020-04-19 11:34:49 · 351 阅读 · 0 评论 -
[Python]自学笔记36:论一只爬虫的自我修养3:隐藏
有一些网站比较讨厌爬虫,它们不想被爬虫访问,所以它们会检查链接的来源,若不是正常途径,那么就会被屏蔽。这就需要将爬虫隐藏有下面几种方法一.修改headers网站一般检查链接的headers里面的USER-Agent,如果不加以修改,爬虫的USER-Agent就会是Python的版本号,所以我们需要自己修改。我们需要利用利用urllib.request.Request(url,data,h...原创 2020-04-16 19:34:53 · 1160 阅读 · 0 评论 -
[Python]自学笔记35:论一只爬虫的自我修养2:实战
第一个项目:爬取猫片需要的网址:http://placekitten.com代码:import urllib.request #导入模块response=urllib.request.urlopen("http://placekitten.com/500/600") #将打开的网页保存到response中cat_img = response.read()#read() 方法用于从文...原创 2020-04-14 16:35:49 · 330 阅读 · 0 评论 -
[Python]自学笔记34:论一只爬虫的自我修养1
URL的一般格式为(带方括号[]的为可选项):protocol ????/ hostname[:port] / path / [;parameters][?query]#fragmentURL由三部分组成:第一部分是协议:http,https,ftp,file,ed2k…第二部分是存放资源的服务器的域名系统或IP地址(有时候要包含端口号,各种传输协议都有默认的端口号,如http的默认端口为...原创 2020-04-14 15:19:00 · 554 阅读 · 0 评论 -
[Python]自学笔记33:模块(2):__name__='__main__',搜索路径和包
1.if __name__ == ‘__main__’当在主程序中调用、__name__时,返回值为 __main__>>> __name__'__main__'def c2f(cel): fah = cel *1.8 + 32 return fahdef f2c(fah): cel = (fah - 32) / 1.8 return cel...原创 2020-04-13 13:27:33 · 148 阅读 · 0 评论 -
[Python]自学笔记32:模块(1):模块就是程序
什么是模块?容器 -> 数据的封装函数 -> 语句的封装类- > 方法和属性的封装1.模块 -> 模块就是程序当在python的安装目录中写一个py文件时,该文件就是一个模块可以在编辑器中对该文件进行DIY并且可以调用注意,调用该模块中的方法时,必须在方法名前面加上模块名否则就会报错,这就是命名空间。2.导入模块在新建文件夹中写一个temp.p...原创 2020-04-12 22:13:59 · 154 阅读 · 0 评论 -
[Python]自学笔记31:生成器
铺垫大家都知道,有列表推导式,那么,其他序列有没有推导式呢? 有!>>> a = [i for i in range(100) if not (i%2)and(i%3)] '''列表推导式'''>>> a[2, 4, 8, 10, 14, 16, 20, 22, 26, 28, 32, 34, 38, 40, 44, 46, 50, 52, 56, ...原创 2020-04-12 16:42:45 · 114 阅读 · 0 评论 -
[Python]自学笔记30:魔法方法(8):迭代器
1.iter()魔法方法:__iter__()2.next()魔法方法:__next__()>>> string = 'FishC'>>> it = iter(string)>>> next(it)'F'>>> next(it)'i'>>> next(it)'s'>>>...原创 2020-04-12 14:46:57 · 94 阅读 · 0 评论 -
[Python]自学笔记29:魔法方法(7):定制序列
容器类型的协议如果你希望定制的容器是不可变的,你需要定义__len__()和__getitem__()方法2)如果你希望定制的容器是可变的,除了__len__()和__getitem__()方法,你还需要定义__setitem__()和__delitem__()两个方法编写一个不可改变的自定义列表,要求记录列表中每个元素被访问的次数。class countlist: def...原创 2020-04-12 14:30:57 · 144 阅读 · 0 评论 -
[Python]自学笔记28:魔法方法(6):描述符(property的原理)
概念:描述符就是将某种特殊类型的类的实例指派给另一个类的属性。1.__get__(self,instance,owner)用于访问属性,它返回属性的值2.__set__(self,instance,value)将在属性分配操作中调用,不返回任何内容3.__delete__(self,instance)控制删除操作,不返回任何内容...原创 2020-04-10 21:11:29 · 126 阅读 · 0 评论 -
[Python]自学笔记27:魔法方法(5):属性访问
1._getattr_(self,name)定义当用户试图获取一个不存在的属性时的行为2._getattribute_(self,name)定义当该类的属性被访问时的行为3._setattr_(self,name,value)定义当一个属性被设置时的行为4._delattr_(self,name)定义当一个属性被删除时的行为以上方法皆可以重写>>> class ...原创 2020-04-10 19:02:20 · 269 阅读 · 0 评论 -
[Python]自学笔记26:魔法方法(4):简单定制
import time as tclass MyTimer: def __init__(self): self.prompt = "未开始计时!" self.lasted = 0.0 self.begin = 0 self.end = 0 self.default_timer = t.perf_counte...原创 2020-04-10 18:06:51 · 133 阅读 · 0 评论 -
[Python]自学笔记25:魔法方法(3):算术运算2
1.可以对原有的类进行修改覆盖>>> class int(int): def __add__(self,other): return int.__sub__(self,other) >>> a = int('5')>>> a5>>> b = int('3')>>> a + b22....原创 2020-04-09 15:21:26 · 236 阅读 · 0 评论 -
[Python]自学笔记22:魔法方法(0):详解
https://fishc.com.cn/forum.php?mod=viewthread&tid=48793&extra=page%3D1%26filter%3Dtypeid%26typeid%3D403转载 2020-04-09 15:01:09 · 227 阅读 · 0 评论 -
[Python]自学笔记24:魔法方法(2):算术运算1
>>> type(int)<class 'type'>>>> type(list)<class 'type'>>>> class C: pass>>> type(C)<class 'type'>由上可知,int,list等不是一个数据类型,而是一个类所以可以对其进行继承...原创 2020-04-09 14:58:37 · 116 阅读 · 0 评论 -
[Python]自学笔记23:魔法方法(1):构造和析构
0.魔法方法总是被双下划线包围,如__init__1.__init__(self[, …])相当于C++的构造函数,在对象实例被创建时执行>>> class Rectangle: def __init__(self,x,y): self.x = x self.y = y def getPeri(self): return (self.x+self.y)*2...原创 2020-04-09 14:36:26 · 116 阅读 · 0 评论 -
[Python]自学笔记21:类与对象(4):一些相关的BIF
1.issubclass(class,classinfo)如果前者是后者的子类,则返回True注:classinfo可以是类对象组成的元组,只要class是其中任何一个候选类的子类,则返回True>>> class A: pass>>> class B(A): pass>>> issubclass(B,A)True>...原创 2020-04-07 22:08:07 · 129 阅读 · 0 评论 -
[Python]自学笔记20:类与对象(3):拾遗
1.组合组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合。class turtle: def __init__(self,x): self.num = xclass fish: def __init__(self,x): self.num = xclass pool: def __init__(self,x,y)...原创 2020-04-07 18:42:37 · 171 阅读 · 0 评论 -
[Python]自学笔记19:类与对象(2):继承
1.声明方法子类 父类/基类class DerivedClassName(BaseClassName):…>>> class parent: def hello(self): print("正在调用父类的方法") >>> class child(parent): pass>>>...原创 2020-04-07 17:54:50 · 137 阅读 · 0 评论 -
[Python]自学笔记18:类与对象(1):初识
1.Python中类的定义与对象的声明使用class关键字,便可定义一个类>>> class ball: def setname(self,name): self.name = name def kick(self): print('我叫%s,该死的谁踢我?' % self.name) >>> a=ball()>>> ...原创 2020-04-07 16:32:51 · 142 阅读 · 0 评论 -
[Python]自学笔记17:EasyGUI
EasyGUI原创 2020-03-07 11:01:38 · 155 阅读 · 0 评论 -
[Python]自学笔记16:异常处理
菜鸟教程原创 2020-03-01 17:07:51 · 186 阅读 · 1 评论 -
[Python]自学笔记15:pickle模块
1.模块名 pickle>>>import pickle2 .pickle.dump(序列,文件.pkl) 生成pkl文件dump操作方法可以将序列以二进制的形式存放在文件中,以便下次使用。>>> import pickle>>>> list1 = ['老八','郭老师','giao']>>> f_p...原创 2020-03-01 16:15:21 · 272 阅读 · 0 评论 -
[Python]自学笔记14:文件系统
1.os模块中关于文件/目录常用的函数使用方法导入方式>>>import os常用操作方法1.os.getcwd() 返回当前工作目录>>> os.getcwd()'C:\\Users\\Administrator\\AppData\\Local\\Programs\\Python\\Python38-32'2.os.mkdir...原创 2020-02-28 16:13:31 · 168 阅读 · 0 评论 -
[Python]自学笔记13:文件典型例题
1.编写一个程序,接受用户的输入并保存为新的文件,程序实现如图:def file_write(file_name): f = open(file_name, 'w') print('请输入内容【单独输入\':w\'保存退出】:') while True: write_some = input() if write_some != ':w'...原创 2020-02-16 16:11:06 · 278 阅读 · 0 评论 -
[Python]自学笔记12:文件
1.文件打开open(‘路径’,‘打开方式’)f = open('G:\\计算机类\\record.txt','w')2.文件对象方法原创 2020-02-16 15:49:29 · 128 阅读 · 0 评论 -
[Python]自学笔记11:集合
0.集合的特点1.唯一性:在集合中每个元素只能存在一个2.不支持索引3.用花括号{ }表示1.集合的定义1.直接用花括号2.使用set()>>> num2 = {1,1,2,2,3,3,4,5,6,7,8,1,0}>>> num2{0, 1, 2, 3, 4, 5, 6, 7, 8}>>> num1 = set([...原创 2020-02-16 14:17:03 · 127 阅读 · 0 评论 -
[Python]自学笔记10:字典
1.字典的模板dict1 = {key1:value1,key2:value2,} #key为键,value为值2.字典的定义方式1.利用工厂函数dict()>>>MyDict1 = dict((('A',1),('B',2),('C',3),('D',4)))2.利用{ }>>>MyDict2 = {'A':1,'B':2,'C...原创 2020-02-15 17:53:11 · 256 阅读 · 0 评论 -
[Python]自学笔记9:lambda表达式与filter(),map()
1.lambda表达式当写一些执行脚本时,使用lambda就可以省下定义函数过程对于一些比较抽象并且整个程序执行下来只需要调用一两次的函数,使用lambda就不需要考虑命名的问题了简化代码的可读性。>>> lambda x : 2 * x + 1<function <lambda> at 0x03D95E80>>>> g ...原创 2020-02-15 14:33:39 · 590 阅读 · 0 评论 -
[Python]自学笔记8:内嵌函数与闭包
1.global关键字Python使用了shdowing屏蔽机制,当在函数中试图修改全局变量时,系统会生成一个变量供函数修改,而本身的全局变量不会发生改变。所以当一定要修改全局变量时,就要用到global关键字了>>>def myfun(): global cout cout = 10 print(cout)>>>myfun(...原创 2020-02-15 11:48:18 · 189 阅读 · 0 评论 -
[Python]自学笔记7:函数
1.使用函数的目的:模块化,便于处理2.函数文档def MyFirstFunction(name):‘函数文档在函数定义的最开头部分,此部分就是函数文档,用不记名字符串表示’print(‘I love FishC.com!’) >>>函数的文档字符串可以按如下方式访问: MyFirstFunction.__doc__ >>>...原创 2020-02-13 21:02:05 · 177 阅读 · 0 评论 -
[Python]自学笔记6:序列
0.简介序列包括列表,元组,字符串1.常见操作list() 转化为列表tuple() 转化为元组str() 转化为字符串len() 返回长度值max() 返回最大值min() 返回最小值sum( ,n) 返回序列和n的和 (n为数字 可不写)sorted() 从小到大排序reversed() 将列表逆转 list(reversed())...原创 2020-02-12 18:15:17 · 170 阅读 · 0 评论 -
[Python]自学笔记5:字符串
0.字符串特点不可随意更改用’ ‘," ",’’’ ‘’'表示1.切片操作类似于列表与元组str1 = ‘lubenwei’str1[:] = ‘lubenwei’str1[1:] = ‘ubenwei’str1[:5] = ‘luben’2.各种操作方法...原创 2020-02-12 17:51:59 · 166 阅读 · 0 评论 -
[Python]自学笔记4:元组
0.元组的最大特点不可修改!1.元组的创建()可有可无,必须有比如:定义一个只有一个元素的元组tuple1 = (1,) 或 tuple2 = 1,2.切片操作tuple1 = (1,2,3,4,5,6,7,8,9)tuple1[:](1, 2, 3, 4, 5, 6, 7, 8, 9)tuple1[1:](2, 3, 4, 5, 6,...原创 2020-02-12 17:51:52 · 143 阅读 · 0 评论 -
[Python]自学笔记3:列表的使用(2)
1.列表的拷贝list1 = [1,2,3,4,5,6]list2 = list1.copy()list2[1, 2, 3, 4, 5, 6]2.列表的删除list1.clear()3.取索引值list1.index()4.返回指定元素的数量list1 = [1,1,1,2,3,3,4,5,6]list1.count(1)3...原创 2020-02-12 17:51:46 · 421 阅读 · 0 评论 -
[Python]自学笔记2:列表的使用(1)
1.列表定义如:list1 = [1,2,3,‘卢本伟’,4] #内容可以为任何类型2.列表增加 项append() // list1.append(2) 或 list1.append(‘卢本伟’)2. extend([列表]) // list1.extend([1,2,3,‘卢本伟’]) 或 li...原创 2020-02-12 17:51:38 · 149 阅读 · 0 评论 -
[Python]自学笔记1:常见语法
常见语法1.print(“字符串”)2.input(“提示信息”)3.if(条件):elif(条件):elif(条件):else:4.while(条件):‘’’ while True ‘’‘breakcontinue5.for i in range(0,10,2): ‘’‘第一项为初始值,第二项为种终止值,第第三项为步长’‘’breakcontinueprint("老八猜...原创 2020-02-12 17:51:17 · 128 阅读 · 0 评论