自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 资源 (8)
  • 收藏
  • 关注

原创 爬虫 介绍

爬虫介绍

2022-07-04 10:05:33 296 1

原创 Django 框架:表关系的实现(简单版本教务系统)

一.常用的字段类型1. IntegerField(int): 整型,映射到数据库中的int类型。2. CharField(varchar) : 字符类型,映射到数据库中的varchar类型,通过max_length指定最大长度。3. TextField(longtext) : 文本类型,映射到数据库中的text类型。4. BooleanField : 布尔类型,映射到数据库中的tinyint类型,在使用的时候,传递True/False进去。如果要可以为空,则用NullBooleanField。

2021-10-03 21:15:11 167

原创 Django 框架:操作mysql数据库

一.Django 模型映射关系模型类必须写在 app 下的 models.py 文件中,模型如果需要映射到数据库,所在的app必须被安装。 一个数据表对应一个模型类,表中的字段,对应模型中的类属性.二.数据库的配置我们需要在 django 的 setting.py 中配置 DATABASES三.mysql 数据库连接器的配置在虚拟环境中安装pymysql: pip install pymysql设置连接器为pymysql:在主目录下的的__init__.py文件添加下面两句import py

2021-10-03 10:13:07 407

原创 Django 框架:注册器

一.注册器1.生成一个注册器from django import templateregister = template.Library() # 生成一个注册器2.如何写进注册器@register.filterdef my_lower(value): return value.lower()(1)register.filter(my_lower()) #注册方法一(2)@register.filter('my_lower') #注册方法二3.自定义的注册器如何使用

2021-09-30 20:26:57 174

原创 Django 框架 :过滤器

一.过滤器1 大小写{#名字:{{ name|lower|capfirst }} {# 大写 upper 小写 lower 首字母大写 capfirst #}2 去除掉其中一个字母{#名字:{{ name|cut:'o' }} {# cut 去除其中一个字母或符号 <br>#}3 增加数字大小{#年龄:{{ age|add:-5 }} {# 增加数字大小 <br> #}4 设置默认值{#设置了默认值的变量为:{{ nu

2021-09-29 21:12:06 173

原创 简单小程序:登录页面(html)

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>登录页面</title> <style> /*盒子样式*/ #box{ width: 350px; //宽 height: 450px; //高 border: 1p

2021-09-26 10:05:33 361

原创 Ajax :01

一.配置远程环境File ——》settings ——》Project:demo ——》Python Interpreter——》小齿轮——》Add——》SSH——》Host:127.0.0.1 Port:22——》bd

2021-09-25 15:13:28 78

原创 JQuery

一.JQueryJQuery 是将 JS 的一些代码块进行封装,方便使用。1.JQ的引入(1)link 导入先进入 https://www.bootcdn.cn/ 网站进行查找,找到后复制到一个 js 中,进行引用。(2)直接复制标签<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js"></script>二.JQ JS 相互转换1. JQ 获取元素$('.p1').eq(1)

2021-09-22 09:45:32 189

原创 JavaScript 03:进阶

一.JS的内置对象1.Math内置函数(1)开平方(sqrt)console.log(Math.sqrt(4));(2)绝对值(abs)console.log(Math.abs(-4));(3)圆周率(log)console.log(Math.PI);(4)幂运算(pow)console.log(Math.pow(2,3));(5)向下取整(floor)console.log(Math.floor(4.6));(6)向上取整(ceil)console.log(Math.c

2021-07-21 15:19:43 69

原创 JavaScript 02:提示

一.JS 操作符1.算术运算符

2021-07-13 10:31:43 78

原创 JavaScript 01:基础

一.JS引入方式1.写在 head 中<head> <meta charset="UTF-8"> <title>Title</title> <script> alert (123) </script></head>2.写在 button 的下面<body><button>按钮</button><script>

2021-06-09 20:26:38 209 1

原创 CSS 02:提升

一.盒子模型1.边框边框有大小和样式后,才会有颜色div { height: 200px; width: 200px; background-color: skyblue; /*边框 大小 样式 颜色*/ /*border: 10px solid teal;*/ /*颜色*/ border-color: green; /*大小*/ border-width:10px; /*样式*/

2021-06-06 21:02:30 139

原创 CSS 01:基础

一.CSS 介绍CSS 可以对网页(html)进行修饰,美化,改变字体大小颜色,间距和加入边框等。1.使用方法(1)直接写在标签里(行列样式)<p style="color: blue;font-size: 2px">我是天才</p>(2)写在 style 标签内(内部样式)将 style 写在 head 内<style> span { color:gold; font-size: 24px;

2021-06-05 16:56:05 113

原创 前端 HTML :如何创建网页 03

六.表单(form)1.输入(input)因为 name 属性是前后端数据交互的过程,用户输入不加name属性,后端就无法接收到数据<body><form action="https://www.baidu.com/s"> <input type="text" name="wd"> <input type="submit" value="提交"><!-- name属性:前后端数据交互的过程,用户输入不加name属性,后端就

2021-06-03 20:13:57 117

原创 前端 HTML :如何创建网页 02

三.列表(块级元素)1.有序列表(ol)可以在更改他的类型,就是草莓,苹果,葡萄前面的序列<ol type="A"> <li>草莓</li> <li>苹果</li> <li>葡萄</li></ol>2.无序列表(ul)也可更改类型,只要在开头标签里修改type书写就可去掉小黑点(type=“none”)<ul> <li>旺仔</li&

2021-06-03 20:09:10 286

原创 前端 HTML :如何创建网页 01

一.HTML 介绍是网页的后缀,txt 后缀是文本 ,py 后缀是 python ,html 后缀就是网页的意思。我们如果像创建一个网页的话,可以直接将文本的后缀改为 html 。HTMLSHI 超文本标记语言,是一种标识性的语言。它包括一系列标记标签,通过这些标记标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。1.html 的介绍页面整体分为两部分:一部分是head部分,主要是页面的整体信息和配置,内容不会出现在浏览器内部。一部分是body部分,这部分内容则会在浏

2021-06-03 20:03:40 590

原创 python高并发 03:协程

一.协程1.迭代(1)迭代协议( iter )利用迭代器协议将列表中的元素依次打印出来# 迭代对象li = [1,2,3,4]li1 = iter(li) # 把列表转迭代对象print(next(li1))print(next(li1))print(next(li1))print(next(li1))ssh://bd@127.0.0.1:1234/home/bd/.virtualenvs/py3env/bin/python3.6 -u /home/bd/py_case/day07

2021-05-09 11:53:51 258

原创 Python高并发 02:进程池与线程池

一.可重复利用的线程1.队列计数器线程只能使用一次,只能执行一次任务,使用完成之后就丢失了,每次来一个任务我们就创建一个新的线程去执行这个任务,会有大的开销,资源和时间的浪费。这种情况下我们可以定义两个函数(两个任务),交给一个线程去完成。而多任务需要有存放空间,存放的空间可以是列表,字典,集合(去重),元组,队列。(1)使用队列进行重复利用其中的队列是先进先出的,并且 get 获取完元素后会删除队列中的该元素。我们需要考虑让线程不结束,消失,就是让线程发生阻塞,而当空间里有任务时,线程阻塞,线程

2021-05-06 17:20:15 161

原创 Python高并发 01:并发通信

一.进程相互通信1.通信隔离(1)进行多进程运算,会产生多个不同空间的进程,因为每个空间都不互通,所以在子进程中的运算结果是不会传到主进程中,这就是通信隔离。from multiprocessing import Processvar = 10def fun(): global var var += 1 print('fun 运算结果为:',var) return var# 新建一个子进程p1 = Process(target=fun)p1.start

2021-04-28 20:28:42 161

原创 网络编程 04:进程与线程的补充

一.多任务运行控制1 . 等待子任务结束(join)进程或着线程添加 join 方法之后,会等待子任务结束,如果没有结束则会阻塞,直到子任务结束,因此join一般都是放在程序的最后面,通过阻塞进行等待。(进程与线程都可使用)import timeimport multiprocessingdef new_time(): """ 返回asc格式的当前时间 :return: """ return time.asctime(time.localtime(time

2021-04-26 20:11:11 105

原创 网络编程 03:进程与线程

一.CPU 时间片时间片是指 CPU 分配给各个程序的时间,每个线程被分配一个时间段,称为时间片。且存在优先调度算法,优先级越高越先执行。单核 CPU 只能实现并发,要想真正实现并行,需要多核 CPU。二.进程表示正在运行的程序,运行一个程序,就会产生进程,计算机会把它们加载到内存中,操作系统分配时间片,优先级等,等待 cpu 调度。特点:一个进程产生一块独立空间,且进程之间相互独立,互不影响。三.时间戳表示格林威治时间1970年01月01日00时00分00秒(北京1970年01月01日08时00

2021-04-25 15:01:31 236

原创 网络编程 02:非阻塞套接字与IO多路复用

一.基本IO模型

2021-04-23 19:21:14 143

原创 网络编程 01:传输模型和套接字

一.网络编程概述1.计算机网络将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件级网络通信协议的管理和协调,实现资源共享和信息传递的计算机系统。2.网络编程用来实现网络互联的不同计算机上运行的程序可以进行数据交换。二.网络模型1.概述:计算机网络之间以何种规则进行通信2.OSI (open Syste lnterconnection)开发系统互连参考模型(1)应用层电脑屏幕上看到的东西——产生数据(2)表示层数据处理,加密与解密,压

2021-04-19 20:24:11 130

原创 进阶编程:编写登陆系统

(接上一篇文章:python 操作 mongo,MySQL,redis)一.编写一个类利用类来封装学生信息class Student: def __init__(self,studentId,name,age,sex,class_id): self.studentId = studentId self.name = name self.age = age self.sex = sex self.class_id =

2021-04-18 15:46:19 269

原创 利用 Python 去操作数据库(MongoDB,MySQL,Redis)

一.操作 MongoDB封装一个操作 MongoDB 的类,可进行增删改查,通过实例化对象同时指定具体集合。1.初始化import pymongoclass MyMongoDB: def __init__(self,database,collection): """ 初始化方法,MongoDB的连接配置 :param database: 指定要连接的数据库 :param collection: 指定要连接的集合

2021-04-17 19:30:08 266 1

原创 MongoDB 01 :介绍与使用

一.MongoDB是一种可扩展的敏捷NoSQL数据库,其中的Mongo源自单词humongous。MongoDB基于NoSQL文档存储模型;在这种模型中,数据对象被存储为集合中的文档,而不是传统关系型数据库中的行和列。文档是以二进制JSON(BSON)对象的方式存储的(端口27017)。nosql (非关系型数据库)> mongodb > 数据库 > 集合 > 文档1.库操作(1)进入(mongo)(py3env) bd@DF:~$ mongo(2)退出(exit)&

2021-04-15 18:48:56 139

原创 Linux 04:linux 的 shell 介绍

一.文本传输1.管道(| xargs)管道可以把一系列命令连接起来,可以将前面的命令的输出作为后面命令的输入。使用管道符 | 来建立一个管道行。将 | xargs 前的结果作为参数传入 | xargs 后的命令中。(grep 是查看文本内容的意思 )2.输入重定向(<)输入重定向是指改变命令发出者,平时我们输入的命令都是由键盘输入的,而输入重定向是由 < 后的文件发出的命令。输入重定向主要用于改变一个命令的的输入源。输入重定向的一般形式为“命令 < 文件名”( wc

2021-04-14 19:48:44 130

原创 linux 03:基本命令

一.文本传输1.(1)下载软件(sudo apt install …)sudo 进行提权apt 下载有关 Ubuntu 有关的软件install 是安装的意思… 可以是任意有关 Ubuntu 的文件(Ubuntu 有关的软件下载使用 apt ,Python 有关的软件下载使用 pip)(2)卸载软件(sudo apt remove …)sudo 进行提权apt 表示与 Ubuntu 有关的软件remove 是删除的意思(3)下载 python 第三方数据库(python 相关模块

2021-04-12 21:05:21 201

原创 Linux 02:基本命令

一. Linux 简介Windows很明显的特征就是有C盘、D盘等各种磁盘。Linux则很简单,只有一个根目录,也可以说只有一个盘,整个系统所有的东西都是在根目录下的二.基本命令1.查看(1)我是谁(who)(2)我在哪(pwd)(3)查看当前位置所有的文件和文件夹(ls)白色的文字表示文件,蓝色的文字表示文件夹(4)查看隐藏文件(ls -a)点开头的就是隐藏的(5)查看文件以列表的形式呈现(ls -l)(6)以文件名倒叙输出(ls -r)(7)查看帮助(man ls /

2021-04-12 17:46:28 73

原创 Linux 01:环境准备

一.VirtualBox1.简介是一个软件,功能是可以模拟一台虚拟电脑。因为我们开发的过程中,服务器的操作系统都是 Linux 系统,而且我们要学习的也是 Linux 系统。但我们的实体机装的都是 window , mac 系统,所以我们使用 VirtualBox 虚拟一台电脑,在虚拟电脑上安装 Linux 系统。而虚拟电脑的好处就是虚拟电脑中毒,电脑不会中毒,只需删除虚拟电脑,重新安装。卸载:在设置中的应用和功能找到以下图标,进行卸载即可。2.因为黑窗口不方便学习,所以我们使用由别人开发研究出

2021-04-11 17:48:40 178

原创 Redis介绍与使用

一.使用1.启动:redis-server2.连接(A连接B电脑):(1)远程连接:redis-cli -h 127.0.0.1 -p 6379(2)本地连接: redis-cli3.判断连接是否正常输入PING(规范是大写,但小写也可以),如果出来的是PONG,则连接正常。4.Redis中有十六个数据库,名称是从0到15。我们每次进入的都是零号库,我们可以通过命令来进入其他库。(1)进入其他库(select)127.0.0.1:6379> SELECT 3OK二.

2021-04-07 18:37:54 77

原创 MySQL 02:表约束与表关系

标题一.表约束1.非空约束(NULL )数据库字段的某个值是否可以为空, NULL 字段值可以为空, NOT NULL 字段值不能为空。当字段设置为空时,插入值就必须插入值,否则就会报错。(1) 设置非空约束(修改)ALTER TABLE 表名 MODIFY 字段名 类型 NOT NULLmysql> ALTER TABLE `student` MODIFY `name` VARCHAR(20) NOT NULL;(2)取消非空约束(修改)ALTER TABLE 表名 MODIFY 字

2021-04-05 17:16:51 130

原创 MySQL 03:查询表

一.单表查询1.查询所有数据(SELECT * FROM tb_name;)SELECT 后面跟上要查询的字段,* 号代表所有的字段,一般来说,查询所有字段是最耗时长的,所以今后查询数据尽可能按需所取。mysql> select * from `student`;+------+---------+------+------+----------+| id | name | age | sex | class_id |+------+---------+------+---

2021-04-05 17:09:55 185

原创 MySQL 01:数据库,MySQL基础

一.数据库1.数据储存大家在自己日常中,存储信息大多用的是文本文档,或者是电子表格,但是对于大量数据的情况下,这样的速度非常慢,所以需要有一种专门管理数据的软件来管理数据2.数据库数据库就类似于一个文件夹,里面放了很多excel表格,但是数据库是专门用来管理数据的软件,所以效率要远远高于excel 或者文本的存储方式。数据库管理系统(DataBase-Management System,DBMS)由一个相互关联的数据的集合和一组用以访问这些数据的程序组成。这个数据集合通常称作数据库(databas

2021-03-28 20:04:56 104

原创 11 生成器和迭代器

一.生成器上节课协议中介绍了迭代器协议,但是需要定义类,而只用函数可以生成的就叫做生成器1.生成器的关键字是 yield ,它的作用和 return (结束方法并带出返回值)相似,都有暂停方法和带出返回值的作用。2.斐波那契数列斐波那契数列,又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34…观察可得后一个数等于前两个数相加,如下,n 表示次数(代码块放在末尾)二.装饰器装饰器是在不改动原来函数的前提下,增加功能。。语法格式:def 装饰器函数名:def

2021-02-27 13:58:18 71

原创 10 面向高级对象

一.属性访问函数在编写一个类以后,她所存在的属性和方法,我们可以调用。但有时我们不清楚他是否存在这样的属性,所以我们可以进行校验。例如下图我们只编写了name属性,没有编写sex属性,所以我们在使用sex属性时会报错。1.hasattr(实例对象,属性)判断属性是否存在,返回值是bool类型,True是存在,False是不存在2.getattr(实例对象,属性)得到属性值,没有则报错,返回值是属性值3.setattr(实例对象,属性)设置属性值,无返回值——None4.delattr

2021-02-23 20:12:27 73

原创 09面向初级对象(类)

一.内置函数常用导论:用所学的知识描述一个人的信息和行为(用户)描述信息(数据):姓名,性别,年龄…行为(功能):吃,睡,玩,学习程序应该面向多人,有很多重复的信息,功能。要去避免。封装的思想,把重复的代码封装起来,要用的时候就调用python就提供了一个关键字classclass 定义类类可以封装一组相关的变量和函数要对变量和函数进一步封装,就使用类用class关键字定义类语法规则:class 类名(类名的命名规则+首字母大写)...

2021-02-08 09:15:03 226 2

原创 08文件

一.文件的基本操作1.打开文件在 python 中打开文件我们需要使用内置函数找到文件的路径和文件的模式后就可得到文件对象。 encoding 是指定编码格式,errors是忽略的意思表示强行打开。但如果强行打开就会出现乱码图中有三个参数,第一个是 ‘test.txt’ ,它表示与我们所编码的文件 test.py 处于同一文件下的文档 test.txt第二个是 ‘r’ ,它表示只读模式。第三个是所使用编码模式,我们将写完的东西进行保存一般都是以 utf-8 的形式保存。encoding 可以将

2021-02-04 22:22:46 555

原创 03python语法(学习笔记 )

python语法是存在在python中的一种语法,就如英语语法一样,语法是这门外语的基础,如果不懂语法就像没有上膛的枪,不能使用。所以必须学会python语法,才能更好的应用python。一.变量1.什么是变量变量就像是数学中的变量,是一种可变的量,并且值随时可以改变。就像是物价,他可能今天是30元等明天就变成40元了。...

2021-02-02 17:19:26 244

原创 07模块和包(函数)

一.函数的定义和调用1.定义函数:我们可以将在不同的地方要调用的相同的功能的代码进行分装,打包,定义一个函数进行封装。例如:假设我们想在登录和注册时验证本人的手机号码是否正确时,我们可以将验证手机号码的过程封装进函数里,之后进行使用。首先,我们定义一个函数,def 是关键字,number 是函数名,括号内是参数。(变量可以自己命名)2.调用定义成函数之后,再调用函数来实现代码的复用,如上我们定义的函数是number(),所有我们就在需要函数的加上number()。print 是不

2021-02-02 16:34:44 199

简单小程序 寻找质数.py

可以方便的判断出一个数字是不是质数

2021-03-27

顺序 倒叙 乱序.py

对字符串进行判断

2021-03-27

寻找字母的多少 作业.py

可以帮你解决统计的烦恼

2021-03-27

随机生成密码 作业.py

操作简单,可以帮你解决不知道设置什么密码的烦恼

2021-03-27

判断输入是否为手机号.py

简单易学,可以直接复制使用

2021-03-27

移除重复元素作业.py

很简单的一个小编程,看一遍就会

2021-03-27

简单易学 九九乘法表.py

九九乘法表

2021-03-27

简单编程小游戏,随机炸弹

一个简单小游戏

2021-02-27

空空如也

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

TA关注的人

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