python学习
Recyclable brother
越努力越幸运
展开
-
python-线程和进程的区别
壹.线程定义:1.线程是操作系统中能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。2.一个线程指的是进程中一个单一顺序的控制流。3.一个进程中可以并发多条线程,每条线程并行执行不同的任务。贰.进程定义:1,程序:我们编写的程序用来描述进程要完成哪些功能以及如何完成。2,数据集:数据集则是程序在执行过程中需要的资源,比如图片、音视频、文件等。3,进程控制块:进程控制块是用来记录进程的外部特征,描述进程的执行变化过程,系统可以用它来控制和管理进程,它是系统感知进程存在的唯一原创 2021-03-02 21:06:57 · 785 阅读 · 0 评论 -
python自学-飞机大战的简单实现(附带相关音频图片资料)
飞机大战音频图片资料包(百度网盘)链接:https://pan.baidu.com/s/1MY_oHjB5vr-5oAWMeLnTWQ提取码:txm01.创建游戏窗口import pygamescreen=pygame.display.set_mode((800,600),0,32) #创建一个游戏窗体while True: pygame.display.update() #消息循环,更新消息2.载入背景import pygamescreen=pygame.display原创 2021-02-28 19:51:23 · 1737 阅读 · 1 评论 -
python自学-class26(down)-wifi的扫描链接
1.wifi的扫描import pytestimport sysimport timeimport platformimport loggingimport pywififrom pywifi import constpywifi.set_loglevel(logging.INFO)def wifi_scan(): wifi=pywifi.PyWiFi() #初始化wifi iface=wifi.interfaces()[0] #第一个无线网卡 iface.sca原创 2021-02-28 19:38:07 · 313 阅读 · 0 评论 -
python自学-class26(up)-数据库(pymysql)的简单应用,增删查改
若要在python中使用数据库MySQL,需要先安装MySQL,使用前需要先进行链接,登录才能使用;查询代码如下:import pymysqltry: db=pymysql.connect(host='127.0.0.1',user='root',password='newpassword')#登录 cursor=db.cursor() #数据游标 #cursor.execute("SELECT VERSION()")#(('8.0.23',),)数据库版本和类型 cu原创 2021-02-28 19:34:32 · 114 阅读 · 0 评论 -
python自学-class25-python在office中的应用
python在office中的应用1. 读写Word2. 读写Excel3. 读写PDF4. 读写ppt5. 调用outlook发生邮件+++++++++++++++++++++++++++++++++++++++++1.读写word读取word,并保存为txt文件,这里主要是调用系统word来读取,然后使用doc.SaveAs来写入txt并保存import win32comimport win32com.clientmyword=win32com.client.Dispatch("W原创 2021-02-28 19:29:59 · 356 阅读 · 1 评论 -
python自学-class24-进程线程练习Plus
进程线程练习Plus1. 数据检索多进程2. 求东方财富平均市值3. 多线程统计平均市值4. 多进程统计平均市值5. 单线程爬取邮箱6. 多线程爬取邮箱7. 多线程简单文件归并8. 多线程文件归并—多个文件交叉写入++++++++++++++++++++++++++++++++++++++++++1.数据检索多进程昨天写了一个多线程的,逻辑差不太多,也是全部将数据载入内存先;import multiprocessingdef finddata(datalist,istart,ien原创 2021-02-16 21:39:53 · 341 阅读 · 2 评论 -
python自学-class23(down)-使用多线程进行数据处理的练习
练习1. 读写所爬取的东方财富股票数据信息(csv文件)2. 多线程统计文件行数3. 多进程统计文件行数4. 多线程检索数据5. 多线程检索邮箱6. 多线程保存文件±+++++++++++++++++++++++++++++++++++++++1.读写所爬取的东方财富股票数据信息(csv文件)之前写过爬取并保存东方财富历年股票数据的小爬虫(传送门:爬取东方财富股票信息),保存格式为csv文件,因此学习如何使用python读写csv文件;read:import csvpath=r"D:原创 2021-02-16 21:12:01 · 410 阅读 · 2 评论 -
python自学-class23(up)-python进程基础学习
python进程基础学习Linux进程虽然也安装了Linux但是对Linux不大熟悉,Linux环境下python进程的体现只有如下寥寥几行代码:import subprocesspingP=subprocess.Popen(args=["data"],shell=True) #执行Linux指令,打开外部程序pingP.wait()print(pingP.Pid) #打印编号print(pingP.returncode) #打印返回值Windows进程1. multiproces原创 2021-02-16 20:42:55 · 228 阅读 · 3 评论 -
python自学-class22(down)-python线程基础学习
python线程基础学习1. 线程通信‘2. 线程通信强化3. condition线程通信与事件4. 线程调度5. 生产者消费者模式6. 线程池7. 定时线程8. with用法9. 前台线程10. TLS++++++++++++++++++++++++++++++++++++++++++++++1.线程通信:用set来激发事件以达到通知效果import threadingimport timedef goevent(): e=threading.Event() #原创 2021-02-16 20:24:34 · 203 阅读 · 1 评论 -
python自学-class22(up)-python线程基础学习
python线程基础学习1. 单线程2. 多线程并发3. 传递参数4. 主线程与小弟线程5. 多线程速度6. 线程冲突7. 基于类实现多线程8. 类线程的顺序执行风格9. 类线程的乱序执行风格10. 基于类解决线程冲突(撞车问题)11. 死锁12. RLOCK解决单线程死锁13. 创建多线程的方式14. 信号量限制线程数量15. 栅栏锁定匹配线程数量*+++++++++++++++++++++++++++++++++++++++++1.单线程:单线程即什么活都是一个人干,原创 2021-02-16 18:16:38 · 220 阅读 · 1 评论 -
python自学-class21-TCP与UDP
这一课主要是学习了一点点基本网络概念,较为详细的我已经在密码学课程中学习过一点点基本概念:#TCP协议,有来有回,必须确认可以通信才会通信#例如:网页下载#优点可靠,缺点速度慢UDP3倍#UDP协议,单方面发送,不管对面回不回#例如:舔狗微信聊天#优点速度快,缺点不可靠#计算机有65535个数据端口通过TCP发送消息:import socketclientTCP = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #TCP通信cli原创 2021-02-16 17:36:23 · 106 阅读 · 0 评论 -
【Python-Debuge】ModuleNotFoundError: No module named ‘pyexcel_xls‘
【Python-Debuge】ModuleNotFoundError: No module named ‘pyexcel_xls’在使用对xls文件进行操作时,遇到错误原因是:pyexcel-xls v0.4.0 已将 xls 拆分为两个 xlsr 和 xlsw,因此您需要改为这些语句:-隐藏导入 pyexcel_xls.xlsr - 隐藏导入 pyexcel_xls.xlsw解决方法是安装pyexcel-xls...原创 2021-02-16 17:27:28 · 1011 阅读 · 1 评论 -
【Python-Debuge】moduleNotFoundError:No module named ‘exceptions‘
【Python-Debuge】moduleNotFoundError:No module named ‘exceptions’在使用python对doc文件操作是,出现错误:原因是开始通过pip安装的docx不适用:解决方法:卸载docx,安装python-docx俩种安装方法,可以通过cmd命令行输入pip uninstall docx,pip install python-docx,如果是pycharm则更简单如下:...原创 2021-02-16 17:23:23 · 178 阅读 · 1 评论 -
python自学-class20-爬取东方财富网股票数据(爬虫)
前俩天学习了正则表达式以及爬虫基础应用,于是我再结合先前一些UI界面设计的知识做一个股票数据查询的小工具,不过还不具备数据分析的功能;刚开始使用了一些博主提供的网址(“http://quote.eastmoney.com/stocklist.html”)去抓取股票列表import reimport urllibimport urllib.requestdef getpage(path): data=urllib.request.urlopen(path).read().decode('ut原创 2021-02-02 17:44:51 · 5473 阅读 · 6 评论 -
python自学-class19(down)-学习爬虫基础
1.读取网页(俩种方式,按行读与全部读)import urllib.request #请求#一次全部读取网页源码#mystr = urllib.request.urlopen("http://www.baidu.com").read()#print(mystr.decode("utf-8"))#按行读取for line in urllib.request.urlopen("http://www.baidu.com"): print(line.decode("utf-8"))2.爬原创 2021-01-31 16:53:16 · 396 阅读 · 0 评论 -
python自学-class19(up)-递归实现文件遍历
import osimport tkinterimport tkinter.ttkclass TreeWindows: def __init__(self): self.win=tkinter.Tk() self.tree=tkinter.ttk.Treeview(self.win) #树状 self.ysb=tkinter.ttk.Scrollbar(self.win,orient="vertical",command=self.tree.y原创 2021-01-31 16:46:17 · 230 阅读 · 0 评论 -
python自学-class18(up)-正则表达式(附带详细使用规则表格)!!!!!
1.为啥使用正则表达式我认为使用正则表达式可以极大简化代码,方便设计复杂的匹配规则等#不使用正则表达式def checkQQ(QQstr): if len(QQstr)<5 or len(QQstr)>11: #判断长度 return False if QQstr[0]<'1' or QQstr[0]>'9': #判断第一个字符1-9 return False for i in range(1,len(QQstr原创 2021-01-31 16:33:43 · 204 阅读 · 0 评论 -
python自学-class17(down)-使用继承方法改进之前的数据查询
1.BaseWindow最主要的一步就是将各个类中重合部分提取出来,比如构造窗体,显示窗体,进入消息循环等步骤,然后集中初始化。然后弄清楚继承部分的关系,其他代码绝大部分都没有发生改变。import tkinterclass BaseWindowShow: def __init__(self): self.win=tkinter.Tk() #构造窗体 self.win.geometry("800x800+300+0") #搜索数据显示窗口 def s原创 2021-01-31 16:19:47 · 204 阅读 · 0 评论 -
python自学-class17(up)-继承Obiect
1.继承#继承的意义是代码重用,数据,函数都可以重用#子类覆盖,子类与父类重名,子类会覆盖父类class parent: def __init__(self): self.money=1000e6 self.mystr="it is for your" def doing(self): print("working!!!") def buy(self): print("have maney")class sun(原创 2021-01-31 16:11:12 · 115 阅读 · 0 评论 -
python自学-class16-异常,MySQL与继承
1.异常处理:num1=eval(input("num1"))num2=eval(input("num2"))try: print(num1/num2) #异常,可能正确,可能错误except ZeroDivisionError: #处理错误,使程序继续运行下去 print("num2禁止=0")print("hello word")2.设置异常提示:def makename(name): if name.find("SB")!=-1: prin原创 2021-01-27 15:43:23 · 103 阅读 · 0 评论 -
python自学-class15-UI界面设计与应用加强
1.界面优化:插入图片:#coding=gbkimport tkinterwin = tkinter.Tk()photo = tkinter.PhotoImage(file=r"D:\壁纸\游戏\1.gif")label = tkinter.Label(win,text="芜湖",image=photo)label.pack()win.mainloop()一点小问题:我发现python3只能插入.gif不能插入.jpg,并且.gif插入后实践显示是静态的,不知道有大佬能否解答???设原创 2021-01-27 15:23:10 · 177 阅读 · 0 评论 -
python自学-class14(down)-窗口界面的设计基础
1.基础:学习了如何调用tkinter创建窗体以及往创建的窗体中添加所需要的功能(按键,文本框,窗体background等)#coding=gbkimport tkinterfrom tkinter import ttkdef go(): print("hello go")win = tkinter.Tk() #构造窗体win.title("hello python")win.geometry("800x800+300+0")button=tkinter.Button(win原创 2021-01-27 15:01:51 · 638 阅读 · 0 评论 -
python自学-class14(up)-类的设计使用(以发邮件为例)
调用smtplib库实现发送邮件功能,可群发,以及邮件轰炸;#coding=gbkimport smtplib #发邮件from email.mime.text import MIMEText #邮件文本class SendMail: def __init__(self,SMTPsever,Sender,password): self.SMTPsever = SMTPsever # 服务器 self.Sender = Sender # 发送邮件的地原创 2021-01-27 14:42:47 · 369 阅读 · 0 评论 -
python自学-class13——类的基础用法
使用类可以实现数据封装,数据独立性重用class是类标识,后面是类名称class namemoney: def __init__(self): #__init__初始化 self自身 print("create") self.name = "tmy" self.money = 100000 def savemoney(self,num): print(self.name,"savemoney",num) .原创 2020-11-22 20:21:31 · 253 阅读 · 0 评论 -
python自学-class12
pickle函数用法import picklesfzlist=[["10","txm"],["0","tcm"],["1","tvm"],["2","twm"],["3","tfm"],["4","tgm"],["5","ttm"],["6","tym"],["7","tgm"],["8","thm"],["9","tom"]]file = open("sfz.bin","wb")pickle.dump(sfzlist,file) #dump全部写入文件,若没有自动在该目录.原创 2020-11-18 21:06:05 · 223 阅读 · 0 评论