![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Pyhon高级
小脑斧123
没有啥可说的
展开
-
特征布局实例讲解
1、特征布局:翻页(盒模型、内联元素)<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>练习1</title> <style type="text/css"> .pagenation{ list-style: none; margin: 50px auto 0px; padding: 0px;原创 2020-07-12 15:57:27 · 107 阅读 · 0 评论 -
backgroud属性
属性解释backgroud属性是CSS中应用比较多,且比较重要的一个属性,它是负责给盒子设置背景图片和背景颜色的,backgroud是一个复合属性,它可以分解成如下几个设置项:值 描述 CSS background-color 规定要使用的背景颜色。 1 background-position 规定背景图像的位置。 1 background-size 规定背景图片的尺寸。 3 background-repeat 规定如何重复背景.原创 2020-07-12 13:23:33 · 507 阅读 · 0 评论 -
定位、相对定位、绝对定位
我们可以使用css的position属性来设置元素的定位类型, postion的设置项如下relative:生成相对定位元素,所占据的文档流的位置保留,元素本身相对自身原位置进行偏移。 absolute: 生成绝对定位元素,元素脱离文档流,不占据文档流的位置,可以理解为漂浮在文档流的上方,相对于上一个设置了定位的父级元素来进行定位,如果找不到,则相对于body元素进行定位。 fixed: 生成固定定位元素,元素脱离文档流,不占据文档流的位置,可以理解为漂浮在文档流的上方,相对于浏览器窗口进行定位。原创 2020-07-04 22:43:30 · 1333 阅读 · 0 评论 -
左右浮动、文字饶图
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>左右浮动</title> <style type="text/css"> .con{ width: 400px; height: 80px; border: 1px solid black; margin: 50px auto 0; } .c.原创 2020-07-01 22:33:53 · 522 阅读 · 0 评论 -
display属性(鼠标悬停文字提示)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> .box{ width: 200px; background-color: gold; font-size: 16px; display: inline-block; .原创 2020-07-01 22:23:25 · 564 阅读 · 0 评论 -
CSS浮动菜单及清除浮动
CSS浮动菜单<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>菜单</title> <style type="text/css"> .menu{ width: 694px; height: 50px; /*去掉小黑点*/ list-style:none; margin: 50px.原创 2020-06-30 22:45:52 · 367 阅读 · 0 评论 -
块元素、内联元素、内联块元素
块元素元素就是标签,不居中常用的三种标签,块元素,内联元素,内敛块元素,了解这三种元素的特性,才能熟练进行页面布局地元素,也可以成为行元素,不居中常用的标签如:div p ul li h1 - h6 dl dt dd都是块元素,他们在布局中的行为:支持全部的样式 如果没有设置宽度,默认的宽度为父级宽度100% 盒子占一行、即使设置了宽度内联元素内联元素,也可以成为内元素,不居中常用的标签如:a span em b strong i等等都是内联元素,他原创 2020-06-23 00:01:02 · 132 阅读 · 0 评论 -
CSS元素溢出
当子元素的尺寸超过父元素的尺寸时,需要设置父元素显示溢出的子元素的方式,设置的方法是通过overflow属性设置的overflow的设置项:1、visible 默认值。内容不会被修剪,会呈现在元素框之外。2、hidden 内容会被修剪,并且其余内容是不可见的,此属性还有清除浮动、清除margin-top塌陷的功能。3、scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。4、auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。5、inherit 规定应该从父元素.原创 2020-06-21 22:49:25 · 1308 阅读 · 0 评论 -
CSS盒子模型
盒子模型解释元素在页面中显示成一个小方块,类似一个盒子,CSS盒子模型就是使用现实中盒子来做比喻,帮助我们设置元素对应的样式。盒子模型示意图如下:把元素叫做盒子,设置对应的样式分别为:盒子的宽度(width)、盒子的高度(height),盒子的边框(border)、盒子的内容和边框之间的间距(padding),盒子与盒子之间的间距(margin)。盒子的宽度 = witdh + padding左右 + border左右盒子的高度 = height + padding上下 + border上.原创 2020-06-21 20:46:39 · 110 阅读 · 0 评论 -
CSS选择器
1、标签选择器2、ID选择器3、类选择器4、层级选择器5、组选择器6、伪类及伪元素选择器<!DOCTYPE html><html><head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{ color: red; } /*1、标签选择器*/ p{ color: blue;.原创 2020-06-21 16:25:38 · 94 阅读 · 0 评论 -
CSS颜色
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title></title> <style type="text/css"> div{ font-size: 30px; color:blue; color: rgb(255,0,0); /*红*/ color: rgb(0,255,0); /*绿*/ color: .原创 2020-06-21 15:13:24 · 94 阅读 · 0 评论 -
HTML+CSS布局
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化...原创 2020-06-21 14:54:56 · 180 阅读 · 0 评论 -
html表单控件
<!DOCTYPE html><html><head> <title>表单</title></head><body> <h1>注册表单</h1> <!--action表单提交地址,如果为空,则提交给当前页面--> <!--method表单提交方式,默认get--> <form action="" method="post"> <di.原创 2020-06-21 12:09:40 · 122 阅读 · 0 评论 -
html简历布局
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>个人简历</title></head><body topmargin="0"> <!--顶格--> <!---cellpadding单元格文字离边界的距离--> <!---cellspacing单元格边框的大小--> <table wi.原创 2020-06-20 22:38:56 · 438 阅读 · 0 评论 -
HTML文档结构、链接、表格
HTML5文档结构<!DOCTYPE html> <!--html文档声明--><html lang="zh-CN"> <!--网页语言为中文,lang="en"是英文--><head> <meta charset="utf-8"> <title>个人主页</title></head><body> 你好!欢迎访问我的个人网页!</body>.原创 2020-06-20 21:23:07 · 127 阅读 · 0 评论 -
通过元类简单实现ORM中的INSERT功能
class ModeMetaclass(type): def __new__(cls, name, bases, attrs): mappings = dict() # 判断是否需要保存 for k, v in attrs.items(): # 判断是否是指定的StringField或者IntegerField的实例对象 if isinstance(v, tuple): .原创 2020-06-15 23:44:25 · 285 阅读 · 0 评论 -
元类
类也是对象,globals查看所有的全局变量对象引用当定义一个函数:类 全局变量时,其实就是创建一个‘对象’,然后再globals获取的这个字典中添加一个名字,让这个名字指向刚刚创建的对象空间而已使用变量名:先到字典里面找,有直接用,没有就到__builtins__内建里面找,没有就报not found error参考:https://www.jianshu.com/p/119cfad15487...原创 2020-06-14 15:44:07 · 124 阅读 · 0 评论 -
增加log日志
添加日志等级# coding:utf-8import logginglogging.basicConfig(level=logging.INFO, filename = './log.txt', filemode='a', # a是追加 w是先删除再加 format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(level.原创 2020-06-14 14:53:30 · 382 阅读 · 0 评论 -
mini_frame框架实现路由和mysql
# coding:utf-8from pymysql import connectimport reURL_FUNC_DICT = dict()get_func_list = list()def route(url): def set_func(func): # URL_FUNC_DICT['/index.py'] = index URL_FUNC_DICT[url] = func get_func_list.append(func).原创 2020-06-13 23:39:42 · 163 阅读 · 0 评论 -
mini_frame框架添加mysql功能
# data_from_mysql = "暂时没有数据,请等待学习mysql吧,学习完mysql之后,这里就可以放入mysql查询到的数据了" db = pymysql.connect(host='localhost',port=3306,user='root',password='mysql',database='stock_db',charset='utf8') cursor = db.cursor() sql = """select * from info;""" ...原创 2020-06-09 23:16:02 · 130 阅读 · 0 评论 -
函数、匿名函数、闭包、对象 当做实参时有什么区别
1.匿名函数能够完成基本的简单功能,传递的是这个函数的引用,只有功能;2.普通函数能够完成较为复杂的功能,传递的是这个函数的引用,只有功能;3.闭包能过够实现较为复杂的功能,传递的是这个闭包中的函数以及数据,因此传递的是功能+数据;4.对象能够实现最为复杂的功能,传递的是很多数据+很多功能,因此传递的是功能+数据...原创 2020-06-07 10:25:01 · 145 阅读 · 0 评论 -
闭包和装饰器
一个函数套着另一个函数,内部函数又用到外部函数的变量,Python中,闭包的主要用途就是用于装饰器的实现参考博文:https://blog.csdn.net/u013380694/article/details/90019571?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant..原创 2020-06-06 21:08:04 · 106 阅读 · 0 评论 -
给程序传递参数,添加web服务器的配置文件,添加shell功能
#coding:utf-8import sysprint(sys.argv)# 运行次程序的方式: python3 xxx.py haha 7890# 是一个列表,里边的项为用户输入的参数mini_frame# coding:utf-8def index(): with open('./templates/index.html', 'r', encoding='UTF-8') as f: return f.read()def center...原创 2020-06-05 22:27:54 · 129 阅读 · 0 评论 -
mini_frame获取页面模板数据
# coding:utf-8import socketimport reimport multiprocessingimport dynamic.mini_frameclass WSGIServer(object): def __init__(self): # 1.创建套接字 self.tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self...原创 2020-06-04 23:15:12 · 139 阅读 · 0 评论 -
WSGI介绍及实现WSGI协议的支持
参考博文:https://blog.csdn.net/on_1y/article/details/18803563原创 2020-06-04 21:24:53 · 150 阅读 · 0 评论 -
多进程-面对对象-web服务器
集成解析动态请求的功能# coding:utf-8import socketimport reimport multiprocessingclass WSGIServer(object): def __init__(self): # 1.创建套接字 self.tcp_server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.tcp_server_s.原创 2020-06-03 22:56:35 · 110 阅读 · 0 评论 -
mini-frame(web框架)
原创 2020-06-03 21:50:27 · 210 阅读 · 0 评论 -
sql注入
def get_info_by_name(self): find_name = input('请输入要查询的商品名字:') sql = '''select * from goods where name = '%s';''' % find_name print('------------>%s<-----------' % sql) self.execute_sql(sql)请输入要查询的商品名字: 'or 1=1 o...原创 2020-06-02 20:52:14 · 267 阅读 · 0 评论 -
案例:京东商城查询
#coding:utf-8from pymysql import connectclass JD(object): def __init__(self): # 创建connection连接 self.conn = connect(host='localhost', port=3306, user='root', password='123456', database='scott', charset='utf8') # 获得Cursor对象.原创 2020-05-28 22:53:35 · 164 阅读 · 0 评论 -
python操作sql
from pymysql import connectdef main(): # 创建connection连接 conn = connect(host='localhost', port=3306, user='root', password='123456',database = 'scott', charset = 'utf8') # 获得Cursor对象 cs1 = conn.cursor() # 执行sql语句,并返回受影响的行数 count.原创 2020-05-28 22:29:53 · 185 阅读 · 0 评论 -
58到家数据库30条军规解读
军规适用场景:并发量大、数据量大的互联网业务军规:介绍内容解读:讲解原因,解读比军规更重要一、基础规范(1)必须使用InnoDB存储引擎解读:支持事务、行级锁、并发性能更好、CPU及内存缓存页优化使得资源利用率更高(2)必须使用UTF8字符集解读:万国码,无需转码,无乱码风险,节省空间(3)数据表、数据字段必须加入中文注释解读:N年后谁tm知道这个r1,r2,r3字段是干嘛的(4)禁止使用存储过程、视图、触发器、Event解读:高并发大数据...原创 2020-05-28 21:28:40 · 197 阅读 · 0 评论 -
数据库操作实战
一、创建goods表并插入数据create table goods(id int unsigned primary key auto_increment,name varchar(150),cate varchar(40),brand_name varchar(40),price decimal(10,3) default 0,is_show bit default 1,is_saleoff bit default 0);insert into goods values(0,'r5.原创 2020-05-28 21:28:05 · 269 阅读 · 0 评论 -
Linux系统Mysql数据库操作
# 默认储存引擎InnoDB,5.5之前是MyISAM# InnoDB具有事务,支持4个事务隔离级别,回滚,崩溃修复能力和多版本并发的事务安全,包括ACID。如果应用中需要执行大量的INSERT或UPDATE操作,则应该使用InnoDB,这样可以提高多用户并发操作的性能# MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的SELECT查询,那么MyISAM是更好的选择参考文章:https://blog.csdn.net/qq_27607965/arti..原创 2020-05-27 23:00:04 · 209 阅读 · 0 评论 -
获取私有属性、魔法属性
获取私有属性#coding:utf-8class Test(object): def __init__(self, name): self.__name = name # 类的属性私有化a = Test('laowang')# a.__name 正常访问无法获取私有属性,因为python名字重整print(a.__dict__) # 查找私有属性重整后的名字 {'_Test__name': 'laowang'}print(a._Test__name) .原创 2020-05-26 20:39:26 · 191 阅读 · 0 评论 -
装饰器@property
class Goods: '''python3中默认继承object类,所以有三种@property装饰器''' # 第一种python3和python2都可以使用 获取值 @property def price(self): print('@property') # 第二种 赋值 @price.setter def price(self, value): print('@price.setter') .原创 2020-05-24 22:34:32 · 127 阅读 · 0 评论 -
类对象、实例对象、类方法、实例方法、类属性、实例属性、静态方法、property
类对象、类属性与实例对象、实例属性的区别在Python中一切皆是对象,类是一个特殊的对象即类对象,描述类的属性称为类属性。类属性在内存中只有一份,在__init__外部定义。通过类创建的对象称为实例对象,描述实例对象的属性称为实例属性。实例属性在各自对象的内存中都保存一份,在__init__方法内部定义。class Province(object): # 类属性 country = '中国' def __init__(self, name): # 实例原创 2020-05-24 22:08:18 · 395 阅读 · 1 评论 -
继承不是复制,只是一个执行过程方向
class Parent(object): x = 1class Child1(Parent): passclass Child2(Parent): passprint(Parent.x, Child1.x, Child2.x)Child1.x = 2print(Parent.x, Child1.x, Child2.x)Parent.x = 3print(Parent.x, Child1.x, Child2.x)# 继承不是复制,只是一个执行过程方向,父类被.原创 2020-05-24 17:25:35 · 138 阅读 · 0 评论 -
python中的三大特点:封装 继承 多态
一、参考博文:https://blog.csdn.net/yangkaiorange/article/details/82461496# 假如a和b模块里面都有一个test方法,谁调用完就属于谁from a import *test() # 属于afrom b import *test()# 属于b二、重载(C语言):方法名相同,根据实参类型的不同调用不同的方法# 方法1def set_info(int number): ****# 方法2def set_...原创 2020-05-24 15:52:51 · 144 阅读 · 0 评论 -
模拟多模块导入应用程序
commonRECV_DATA_LIST = list() # 用来存储数据HANDLE_FLAG = False # 用来标记是否处理完成recv_msgfrom common import RECV_DATA_LIST# from common import HANDLE_FLAGimport commondef recv_msg(): '''模拟接收到数据,然后添加到common模块的列表中''' print('----->recv_msg')..原创 2020-05-23 18:19:28 · 108 阅读 · 0 评论 -
import 模块导入
#coding:utf-8import sysimport Test # 一次导入无限调用from importlib import reload # 导入reload模块sys.path # import路径搜索sys.path.append('D:/SourceCode/xxx') # 添加新的模块路径sys.path.insert(0, 'D:/SourceCode/xxx') # 可以确保先搜索这个路径del sys.path[-1] # 删除模块路径reload.原创 2020-05-23 18:15:48 · 96 阅读 · 0 评论