列举你所知道的PEP8规范
每级缩进用4个空格
限制所有行的最大行宽为79个字符
文本长块,比如文档字符串或注释,行长度应限制为72个字符
空两行来分割顶层的函数和类的定义
类的方法定义或者定义变量的时候使用一个空格来隔开
导入模块的时候空一个空格
在逗号,冒号,分号之前是避免空格的
字符编码的发展史
阶段1
计算机只认识数字,因为在计算机中一切数据都是以数字来表示的,因为英文符号是有限的,所以在规定使用的字节最高位是0,每一个字节都是以0~127之间的数字来表示,比如A对应的是65,a对应的是97
这就是美国标准信息交换码ASCLL码
阶段2
随着计算机在全球的普及,很多国家和地区都把自己的字符引入了计算机中,比如汉字。
此时发现一个字节能表示数字范围太小,不能包含所有的中文汉字,那么久规定使用两个字节来表示一个汉字。
规定:原有的ASCLL字符的编码仍然用一个字符,为了区别一个中文字符与两个ASCLL码字符相区别。
中文字符的每个字节最高规定为1,这个规定就是GB2312编码
后俩在GB2312的基础上增加了更多的中文字符,比如汉字,也就是出现了GBK编码。
为了解决各个国家因为本地化字符编码带来的影响,就把世界上所有的符号统一进行编码Unicode编码
常见的字符集
ACSLL:占一个字节,包含128个字符,不能表示汉字
GB2312/GBK:占两个字节,支持中文
UTF-8:是一种针对Unicode的可变长度字符编码,又称为万国编码。用1到6个字符编码Unicode字符。用在网页上可以统一页面显示中文简体繁体以及其他语言。
数据库中的三种对应的关系,还有var和varchar的区别
一对一:
例如:一个人对应一个唯一的身份证号
一对多:
例如:一个班级对应多名学生
多对多:
例如:一个学生可以选多门课程,而同一门课程可以被多个学生选修
char类型的长度是固定的,varchar的长度是可变长的
存储一个‘abc’,使用char(10),表示存储的字符将占10个字节(其中包含7个空字节)
使用varchar(10),表示存储只占3个字节,10是最大的值,当存储的字符小于10时,按照实际的长度存储,这样可以节省内存空间;但是char比varchar的效率稍高,即要获得效率即必须牺牲一点空间,这就是设计上的“以空间换时间”,虽然varchar比char节省空间,但是一个varchar列经常被修改,而且每次修改数据的长度不同,这会引起“行迁移的现象”,而这造成的多余的I/O,是数据库设计中尽量避免的,在这种情况下使用char代替varchar会更好一些
总结:如果一个字段经常被修改,而且每次修改的数据长度不同,为了效率应当考虑用char定长代替varchar变长。
设计的时候尽量考虑,用空间换时间。
JQuery表单筛选器
(:checked)需要注意什么,样式操作都有哪些方法,属性操作方法以及针对checkbox和radio属性操作有何不同
JQuery的:checked
选择器用于匹配所有选中的表单域元素,将其封装为jQuery对象并返回。
选中的表单域指的是具有checked属性的radio和checkbox表单域,以及具有selected属性的option标签
注意:checked选择器不仅匹配具有checked属性的radio和checkbox,还可以匹配具有selected属性的option标签。:checked选择器只匹配具有checked属性的radio和checkbox是错误的。
语法:jQuery(“:checked”)
返回值
返回封装了所有选中的表单域元素的jQuery对象
如果找不到任何响应的匹配,则返回一个空的jQuery对象。
查看所有的提交按钮
$(":checked");
如果你希望选中radio和checkbox,使用input:checked
js代码用法:$("input:checked");
如果匹配选中的checkbox,使用checkbox:checked
,radio也是同理的
$(":checkbox:checked);
一、jQuery后续
- 动画效果
// 基本
show([s,[e],[fn]])
hide([s,[e],[fn]])
toggle([s],[e],[fn])
// 滑动
slideDown([s],[e],[fn])
slideUp([s,[e],[fn]])
slideToggle([s],[e],[fn])
// 淡入淡出
fadeIn([s],[e],[fn])
fadeOut([s],[e],[fn])
fadeTo([[s],o,[e],[fn]])
fadeToggle([s,[e],[fn]])
// 自定义(了解即可)
animate(p,[s],[e],[fn])
(1)自定义点赞动画实例
点赞特效简单示例
2. jQuery的自带方法
注意: jQuery的方法返回一个jQuery对象,遍历jQuery集合中的元素 - 被称为隐式迭代的过程(即一个jQuery对象通过点的方法,会自动的遍历jQuery对象这个数组中的每一个JS对象,将这些JS对象都执行一次点的方法。)。当这种情况发生时,它通常不需要显式地循环的 .each()方法:
(1)each (类似for循环)
语法一:
$.each(collection, callback(indexInArray, valueOfElement)):
// 例子:
li =[10,20,30,40]
$.each(li,function(i, v){
console.log(i, v);//index是索引,ele是每次循环的具体元素。
})
// 输出:
010
120
230
340
语法二:
.each(function(index, Element)):
// 描述:遍历一个jQuery对象,为每个匹配元素执行一个函数。
// 例子:
// 为每一个li标签添加foo
$("li").each(function(){
$(this).addClass("c1");
});
等价于:$("li").addClass("c1"); // 对所有标签做统一操作
终止遍历
//在遍历过程中可以使用 return false 提前结束each循环。类似python的for循环时的break
(2)data() (存放隐形的数据)
原本我们可以通过给标签添加自定义属性来让标签携带一些数据。但是这些数据可以通过浏览器查看源码查看到,但通过data()方法增加的数据直接保存在内存中。无法只能通过data()方法查看。
添加值的方法:
$("div").data("k",100);//给所有div标签都保存一个名为k,值为100
查看使用data方法添加的值
$("div").data("k");//返回第一个div标签中保存的"k"的值
移除元素通过data方法上存放的数据
removeData(key):
描述:移除存放在元素上的数据,不加key参数表示移除所有保存的数据。
// 例子:
$("div").removeData("k"); //移除元素上存放k对应的数据
二、前端框架之Bootstrap
Bootstrap的具体用法请点击链接:Bootstrap官网
- CDN
CDN的全称是Content Delivery Network,即内容分发网络 ,通过CDN可以更快的访问到原本在其他远距离地方的数据。
通过网站BOOTCDN找到在线的Bootstrap框架的源码,再通过本地的html文档的link标签导入其中的压缩版css链接,通过script标签导入压缩版的js链接即可。
也可将他们下载来下分别保存在文件中,再进行导入。
- Bootstrap中常用的全局CSS样式
以下都是通过类来实现的,即这些关键字都是直接写在标签的class属性中
(1)栅格系统
切记栅格不能超过12
关键字:
container最大宽度
col-参数 栅格类
row
(2)表格
关键字:
table 创建表格样式
table-参数 调节表格详细样式
(3)表单
关键字:
form-control 设置表单样式
(4)按钮
关键字:
btn 将标签变成按钮
btn-参数 调节按钮样式
- Bootstrap中常用的组件
(1)字体图标(也可通过其他网站获取图标)
这些图标相当于标签的文本信息。可直接调节文本的方法改变其状态。
这里提供一个 图标库
(2)导航条
关键字
navbar 创建导航条:
navbar-参数 调节导航条样式 (3)巨幕 关键字: jumbotrom 创建巨幕 (4)面板 关键字: panel 创建面板 panel-参数 调节面板样式