自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 资源 (1)
  • 收藏
  • 关注

原创 python爬虫----selenium

selenium相当于机器人,可以完成点击等人类可以做的操作.webdriver是一系列可以驱动不同浏览器的软件,和selenium配合使用.软件准备:安装了selenium这个第三方库和不同浏览器的driver安装测试:from selenium import webdriver#webdriver是用来区分不同的浏览器的#这个是浏览器驱动程序的路径driver_pa...

2020-03-29 18:27:59 228

原创 python多线程----queue模块

#首先要知道,python的列表是不安全的,#因为它不符合原子性,对列表中的某个元素进行操作有两部,先取到元素,然后改变值# queue模块# 首先说一下queue模块# 这个模块其实就是实现了一个叫队列的数据结构,但是它是线程安全的# 而且严格来说不只是队列,还能实现栈.import queue# 先进先出,也就是传统意义上的队列,也就是滑滑梯q = queue.Que...

2020-03-28 18:18:22 231

原创 python多线程----生产者消费者模式

Lock版本:#其实生产者和消费者都是要修改公共资源的#但是消费者,要在生产者修改过公共资源后,才能处理公共资源,#生产者生产后,就等着消费者处理完,生产者再修改数据.import threadingimport randomimport timegMoney=0gLock=threading.Lock()def producer(): global gMon...

2020-03-28 18:17:14 248

原创 python多线程基本用法

import threading#多线程的实现方法: #实现方法1:def function(): for i in range(10): print(i)t1=threading.Thread(target=function)t2=threading.Thread(target=function)t1.start()t2.start() #...

2020-03-28 18:15:18 193

原创 python数据库操作----MongoDB

import pymongo#获取连接mongodb的对象client = pymongo.MongoClient("127.0.0.1",port=27017)#获取数据(没有自动创建一个)db=client.admin#获取数据库中的集合:collection=db.collection1#写入数据: #只插入一条数据collection.insert_on...

2020-03-28 12:11:42 122

原创 MongoDB--准备知识

先使用管理员身份打开cmd,然后输入如下命令:mongod --dbpath 此处为MongoDB的data目录的路径这就运行了MongoDB的服务端.但是通过上面的方法打开的MongoDB服务不方便,每次都要输入data路径,还不能关dos窗口所以要将MongoDB制作为windows服务,以后通过一行命令就可以运行了. 1.制作配置文件 在MongDB的安装目...

2020-03-28 11:00:41 131

原创 json,python相关

import json#json:数据清晰,数据传输的主流方式'''json支持的数据格式:对象(字典):使用花括号;数组(列表):使用中括号;整型,浮点型,布尔型,null字符串必须使用双括号多个数据之间使用都好的方式分开,json的本质是字符串.'''#字典或列表转jsonuser_a=[ {"username":"黎雨毫", "password...

2020-03-28 09:30:57 111

原创 CSV,python相关

#csv:纯文本,记录(每一行一条记录),每条记录被分隔符分割为字段,每条记录都有同样的字段序列(表)import csv#读取csv读取: #列表形式with open("example.csv",'r') as fp: reader=csv.reader(fp)#reader是迭代器 #next()函数就是对迭代器的下一个 next(reader)...

2020-03-28 09:29:32 140

原创 python爬虫之处理资源----xpath(lxml),beautifulsoup(bs4),正则表达式(re)

首先是lxml库:#我用的火狐,安装一个try xpath插件就好了"""xpath路径:1.选取节点: 首先,随便一个节点名称,这是基本 然后,单斜杠,/,如果出现在开头,那就从根节点寻找; 如果在某个节点后面,那就表示在该路径下的直接子节点 还有,双斜杠,//,找去所有可以匹配的节点,不论路径. ...

2020-03-28 09:24:06 823

原创 python爬虫之获取资源----urllib,requests

首先是urllib库from urllib import request as refrom urllib import parseurl="http://book.zongheng.com/book/927896.html"#基本的urlopen()方法,返回一个response对象resp=re.urlopen(url,data=None)#response对象的方法,...

2020-03-28 09:20:08 466

原创 设计模式总纲

工厂模式:怎么写: 工厂模式有简单工厂模式,工厂模式,抽象工厂模式,看起很复杂, 但其实很简单, 本质就是把构造方法放到非构造方法里面, class 类名_之_我是简单工厂{ public 类名_之_我是产品 方法名_之_生产(){ return new 类名_之_我是产品() } } 到时...

2020-03-19 21:20:55 192

原创 matplotlib学习笔记(五)-入门级总结

这是我结合各个博客的案例,去芜存菁,精挑细选而出,具有较大参考,学习意义的案例与总结,有缘之人可以复制到编译器上逐个学习:def 基础知识(): #Figuer:一个图形可以具有任意数量的Axes,但要有用,至少应具有一个。 '''Axes这就是您认为的“绘图”,它是具有数据空间的图像区域。 一个给定的图形可以包含许多Axes,但是给定的Axes对象只能在一个Fig...

2020-03-09 15:20:20 226

原创 python时间看到就发怵?

最近在做一个和日记相关的小软件,要和时间打交道了.看了好长时间,做总结如下:import time, datetimeimport sysdef time库_讲解(): 时间戳="1970纪元后经过的浮点秒数,类型不是字符串" 时间格式字符串= "年:%Y 月:%m 日:%d 小时:%H 分钟:%M 秒:%S 星期%w" \ ...

2020-03-06 21:54:10 148

原创 一文解决python的GUI--python程序员必会GUI库-神器PySimpleGUI良心总结

python的主流GUI库wxPython,tkinter,PyQt5学起来周期长,性价比不高;其他语言C++太难学,不值当;Java丑得一批,写起来也不容易;html+CSS+xml+js的话了解过,但是不会Web框架,望而却步;更有什么Electron,Delphi,VB感觉更是遥远.我一个Python小彩笔想写个GUI怎么就这么难呢?????那是因为你没有遇到PySimpl...

2020-03-01 09:55:50 18652 24

使用Qt实现的C++画板(包含源码,可执行exe文件)

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); // 给pixmap赋值 pixmap = new QPixmap(900, 600); //设置背景色 pixmap->fill(Qt::white); //根据pixmap创建一个qpaiter painter= new QPainter(pixmap); // 使用 pixmap,也就是把这个控件加到ui里面 ui->pixmap_label->setPixmap(*pixmap); //这里关联信号和槽 connect(ui->linecolor_r_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->linecolor_g_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->linecolor_b_slider,SIGNAL(valueChanged(int)),this,SLOT(linecolor_changed())); connect(ui->fillcolor_comboBox,SIGNAL(currentTextChanged(QString)),this,SLOT(fillcolor_changed())); //这里初始化填充颜色下拉框: ui->fillcolor_comboBox->addItem("黑色"); ui->fillcolor_comboBox->addItem("白色"); ui->fillcolor_comboBox->addItem("红色"); ui->fillcolor_comboBox->addItem("绿色"); ui->fillcolor_comboBox->addItem("蓝色"); ui->fillcolor_comboBox->addItem("黄色"); } MainWindow::~MainWindow() { delete ui; delete pixmap; delete painter; delete linecolor;delete fillcolor; delete circle,rect; } //这个函数是生成按钮被按下时的画图实现: void MainWindow::on_draw_button_clicked() { if (ui->tabWidget->currentIndex()==0)//这个是画圆的部分 { circle =new Circle(new QPoint(ui->circle_x_spinBox->value(),ui->circle_y_spinBox->value()),ui->circle_r_spinBox->value()); circle->draw(painter); } else if (ui->tabWidget->currentIndex()==1){ rect=new Rect(new QPoint(ui->rect_x_spinBox->value(),ui->rect_y_spinBox->value()),ui->rect_a_spinBox->value(),ui->rect_b_spinBox->value()); rect->draw(painter); } ui->pixmap_label->setPixmap(*pixmap); } //这个函数就是设置边线颜色的: void MainWindow::linecolor_changed(){ linecolor=new QColor(ui->linecolor_r_slider->value(),ui->linecolor_g_slider->value(),ui->linecolor_b_slider->value()); painter->setPen(*linecolor); QPalette label_palette; label_palette.setColor(QPalette::Background, *linecolor); ui->linecolor_display_label->setAutoFillBackground(true); ui->linecolor_display_label->setPalette(label_palette); } void MainWindow::fillcolor_changed(){ QString str=ui->fillcolor_comboBox->currentText(); if (str=="黑色"){ fillcolor =new QColor(Qt::black); } else if (str=="蓝色"){ fillcolor =new QColor(Qt::blue); } else if (str=="黄色"){ fillcolor =new QColor(Qt::yellow); } else if (str=="白色"){ fillcolor =new QColor(Qt::white); } else if (str=="绿色"){ fillcolor =new QColor(Qt::green); } else if (str=="红色"){ fillcolor =new QColor(Qt::red); } painter->setBrush(QBrush(*fillcolor)); } //这个函数一不小心搞出来,没用,删了会报错? void MainWindow::on_linecolor_r_slider_actionTriggered(int action) { } //这个函数就是用来保存的功能实现: void MainWindow::on_save_button_clicked() { ofstream out("D://data.txt", ios::out|ios::app); if (ui->tabWidget->currentIndex()==0)//此处保存圆 { out<<"circle"<<endl; out<<Circle::count<<endl; out<center->x()<<" "<center->y()<<" "<r<tabWidget->currentIndex()==1)//此处保存矩形 { out<<"rect"<<endl; out<<Rect::count<<endl; out<northeast->x()<<" "<northeast->y()<<" "<width<<" "<height<<" "<<endl; Rect::count++; } out<red()<<" "<green()<<" "<blue()<<" "<<endl; out<red()<<" "<green()<<" "<blue()<<" "<>str){ if (str=="rect"){ infile>>z>>a>>b>>c>>d; rect = new Rect(new QPoint(a,b),c,d); infile>>a>>b>>c; linecolor=new QColor(a,b,c); painter->setPen(*linecolor); infile>>a>>b>>c; fillcolor=new QColor(a,b,c); painter->setBrush(QBrush(*fillcolor)); rect->draw(painter); } else{ infile>>z>>a>>b>>c; circle=new Circle(new QPoint(a,b),c); infile>>a>>b>>c; linecolor=new QColor(a,b,c); painter->setPen(*linecolor); infile>>a>>b>>c; fillcolor=new QColor(a,b,c); painter->setBrush(QBrush(*fillcolor)); circle->draw(painter); } ui->pixmap_label->setPixmap(*pixmap); } infile.close();} void MainWindow::on_clear_button_clicked() { pixmap->fill(Qt::white); ui->pixmap_label->setPixmap(*pixmap); }

2020-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除