Python开发之路 - 描述符的应用
1.描述符的应用 用描述符实行类型检测 class Dtype:
def __init__(self,key,expect_type):
self.key = key
self.expect_type = expect_type
def __get__(self, instance, owner):
return instance.__dict__[self.key]
def __set__(self, instan
JS之Cookie、localStorage与sessionStorage
基本概念: cookie:是指Web浏览器存储的少量数据,同时它是与具体的Web页面或者站点相关的。 localStorage:用于长期保存整个网站的数据,保存的数据没有过期时间,直到手动删除。属性是只读。 sessionStorage:用于临时保存同一个窗口(或标签页)的数据,在关闭窗口或者标签页之后将删除这些数据。 直接上图看三者的区别与相同点 localStorage与sessionStorage存储API localStorage.setItem('x' ,1) // 以'x'为名字存
注释----->该怎么写/单行/多行/文档
几行代码也许很容易知道功能,但几百行的代码,多个文件,也许刚写的时候是知道功能与特性的,但是随着时间的流逝,对自己的代码越来越难以理解,更别说其他人了。代码的可读性巨差,影响编程开发效率。 注释的分类 1 单行注释://;选中要注释的代码块或者一行代码,然后按键盘“ Ctrl + shift + C ”或者“ Ctrl + / ” 进行注释,该快捷键既可以注释单行也可以注释多行 2 多行注释:/*........*/ 同上 取消注释:直接按相同的快捷键“ Ctrl + shift + C ”或
div内容超过实现滚动条以及设置滚动条属性【CSS实现】
例如,有一个id叫做mleft的div,当内容超过他原本的高度或者宽度,出现滚动条。 一般默认的滚动条太难看,此时我们要自定义样式 div的基本css: #mleft{
width:200px;
height:500px;
float:left;
background-color:rgb(0,191,255);
overflow:auto;/*当内容超过,出现滚动条*/
} 滚动条的css【以下对应的选择器都要有才行】 #mleft::-webkit-
CentOS7 部署Django Celery
在生产环境中部署Django、Celery项目需要开机启动,因此需要配置系统服务。 下面以CentOS7系统为例,记录配置Django和Celery为系统服务,并开机启动。 1.Django服务 在生产环境中部署Django项目需要用到uwsgi或gunicorn,这里我使用gunicorn。 1.1 Gunicorn简介 Gunicorn“绿色独角兽”是一个被广泛使用的高性能的Python WSGI UNIX HTTP服务器,移植自Ruby的独角兽(Unicorn )项目,使用pre-for
Linux-LVM逻辑卷管理器
补2020-03-06 第十课时——7.2 LVM(逻辑卷管理器) 部署LVM相当于将硬件容量进行整合,然后再根据实际情况来划分使用,可以动态调整所需使用的大小。 其中再硬件上PE为最小单位为4M。 在部署命令表中需要注意的是无法对硬盘进行扩展和缩小,因为硬盘是固定的(即无法对PV进行扩展和缩小) 在创建LVM的过程中需要注意,xfs不支持LVM,需要mkfs.ext4。 ps:考试时若让创建400M,就创建400M,真实会在380M这样,属于正常范围浮动。 扩容逻辑卷——重点!!!考试内容
自定义Adapter(适配器) 以一个简单的聊天界面为例
Adapter 1.概念 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter
《时间地图》第一个30万年:宇宙、时间、空间的起源
智慧、好奇再加上一点儿畏惧,是任何历史学家凝视历史风景的出发点。 每一个开端似乎都意味着会有一个更早的开端。 只要你问,上帝是如何被创造的,问题就出来了。我们所遭遇的不是一个出发点,而是永无穷尽的出发点,每一个出发点都会遇到相同的问题。 面对事物的起源,语言本身濒临崩溃。 我们之中的许多人也体验过我们自身的起源,最早拥有记忆的那一瞬间,就像在虚无中被唤醒一样。 怀疑论坦率地承认,在某些方面我们必然会志穷竭虑的。人类的知识本质上是有限的,因此某些问题依然是神秘的。一些宗教把这些神秘看作神故意对人
今日推荐
周排行