- 博客(41)
- 收藏
- 关注
原创 Linux下虚拟环境的搭建【全网最详细】
来查看virtualenvwrapper.sh文件的安装地址然后再source出队路径进行修改【按 i 即可对文件进行编辑,退出文件的编辑操作为esc 然后:wq 回车即可】注:如果在 Ubuntu 系统中执行 sudo vim 命令出现了 “找不到命令” 的错误提示,说明你的系统中可能没有安装 vim 编辑器。注:我这里使用的是vmware和Ubuntu。注:如果出现 目录不存在的问题 可以通过指令。python3:是指使用python3的版本。注:运行命令后 不会出现任何提示哦。
2023-04-14 11:35:28
1490
原创 深度学习撞上推荐系统——02 GFM MLP NCF Pytorch代码实现
深度学习撞上推荐系统——02 GFM MLP NCF Pytorch代码实现
2022-06-12 10:22:29
1278
原创 深度学习撞上推荐系统——01Deep Cross(基于残差网络的DNN模型) Pytorch代码实现
深度学习撞上推荐系统——01Deep Cross(基于残差网络的DNN模型) Pytorch代码实现
2022-06-10 21:28:37
1904
原创 2-GMF原理+Pytorch 代码复现
import pandas as pdimport numpy as npimport mathfrom collections import defaultdictimport heapqimport scipy.sparse as spimport torchimport torch.nn as nnimport torch.nn.functional as Fimport torch.utils.dataimport torch.backends.cudnn as cudnn..
2022-04-20 15:49:38
1344
原创 推荐系统之矩阵分解(MF)及其python代码讲解
推荐系统之矩阵分解(MF)及其python实现完整代码如下from math import *import numpy as npimport matplotlib.pyplot as pltdef MF(R,P,Q,K,aplha,beta,steps): ''' :param R: 用户-物品评分矩阵 m*n :param P: 用户的分解矩阵 m*k :param Q: 物品的分接矩阵 m*k :param K: 隐向量的维度 :pa
2022-04-19 19:36:24
2472
原创 【自己一点一点扒的代码 全网最详细 不全你找我】图卷积神经网络 GCN pychorch 代码 讲解+ 注释
【自己一点一点扒的代码 全网最详细 不全你找我】图卷积神经网络 GCN pychorch 代码 讲解+ 注释自己整整扒了一下午 从函数一点一点 到整个网络的组成
2022-04-08 21:23:19
1182
1
原创 Vue脚手架
vue脚手架1.vue脚手架的基本用法:快速生成Vue项目基础架构安装3.X版本的Vue脚手架npm install -g @vue/cil2.基于3.x版本的脚手架创建vue项目1.基于交互式命令行的方式创建新版vue项目vue create my-project2.基于图像化界面的方式,创建新版vue项目vue ui3.基于2.x的旧版本,创建旧版本的vue项目npm install -g @vue/cli-initvue init weback my project3,vu
2021-11-26 16:50:41
445
原创 前端工程化
模块化相关规范1.模块化:将单独的功能封装到一个模块中,模块之间相互隔离,可以通过特定的接口公开内部成员,也可以依赖背的模块好处:方便代码的重用,从而提升开发效率,方便后期的维护2.浏览器端的模块化规范:AMD CMD服务器端的模块化规范:CommonJS3.ES6模块化:1.定义(1)每个js文件都是一个独立的模块(2)导入模块化成员使用import关键字(3)暴露模块成员使用export关键字2.Node.js通过babel体验ES6模块化(1)npm install --save
2021-11-26 14:38:53
299
原创 Web开发模式+身份认证+Session
Web的开发模式web开发模式分为两种:①基于服务器端的传统Web开发模式服务器发送给客户端HTML页面,实在服务器端通过字符串的拼接,动态生成的【所以不需要Ajax这样的技术进行额外的请求】优点:前端耗时少有利于SEO缺点占用服务器资源不利于前后端分离,开发效率低②基于前后端分离额新型Web开发模式依赖于Ajax技术,后端只负责提供API接口,前端使用Ajax调用接口身份认证:通过一定的手段,完成对用户身份的确认1.服务器端渲染的身份认证:推荐使用Session认证机制2.
2021-10-27 13:34:33
196
原创 数据库与身份认证
数据库基本概念1.数据库:用来组织,存储和管理数据的仓库2.常见的数据库分类:MySQL【目前使用最广泛,流行度最该的开源免费数据库】OracleSQL Server-上述是传统型数据库,关系型数据库Mongodb数据库【新型数据库,菲关系型数据库】3.传统型数据库的数据组织结构:数据库,数据表,数据行,字段4.实际开发中库,表,行,字段的关系①在实际开发中,一般情况下,每个项目都对应独立的数据库②不同的数据,要存储到数据库的不同的表中③每个表中具体存储哪些信息没有字段决定④表中
2021-10-25 21:56:32
324
原创 Express
Express1.定义:Express是基于Node.js平台,快速,开放,极简的Web开发框架【专门来创建Web服务器的】2.本质:是npm上的第三方包,提供了快速创建Web服务器的便捷方法3.最常见的两种服务器:①Web网站服务器:专门对外提供Web网页资源的服务器②API接口服务器:专门对外提供API接口的服务器使用Express可以方便快捷的创建上述两个网站服务器4.安装express: npm i express@4.17.1创建基本的Web服务器(1)导入express(2)
2021-10-23 11:20:40
225
原创 关于nodemon无法在VScode上运行的解决方法
我们全局安装号nodemon后,在VScode上运行可能会报这样的错误解决方法在PowerShell中输入下面的命令set-ExecutionPolicy RemoteSigned会看到这样的画面直接输入大写的A就成功啦
2021-10-22 10:32:57
617
原创 npm+模块加载机制
包1.包:Node.js的第三方模块叫做包2.包的来源:第三方个人或团队【免费开源】3.包是基于内置模块封装出来的,极大地提高了开发效率,包与内置模块之间的关系==JQuery与API之间的关系4.包的下载:(1)https://www.npmjs.com【搜索包】(2)https://regidtry.npmjs.org【下载包】npm1. 在项目中安装指定包的名称:npm install 包的完整名称【 npm i 包的完整名称】 npm i moment测试代码:const
2021-10-21 22:02:18
472
原创 Node.js与内置模块
Node.js1.JavaScript组成:核心js语法和WebAPI2.浏览器中的JavaScript运行环境:(1)运行环境:代码正常运行所需的环境3.Node.js:JavaScript的运行环境1. 浏览器是JavaScript的前端运行环境2.Node.js是JavaScript的后端运行环境3.Node.js无法调用DOM和BOM等浏览器内置的API3.Node.js的环境安装:打开官网,下载所需的版本,双击安装即可(1)LTS版本:长期稳定版,(2)Current:尝新版本
2021-10-21 09:44:31
444
原创 封装自己的Ajax函数
封装自己的Ajax函数举例:定义myAjax()函数,他接收一个配置对象作为参数,在配置对象中可以设置一下的属性method:请求的类型URL:请求的URL地址data:请求携带的数据success:请求成功之后返回的函数data对象:我们需要把data函数中的对象...
2021-10-10 00:00:00
235
原创 URL编码与解码
1.URL编码:在URL地址中,只允许出现英文相关的字母,标签符号,数字。所以,在URL地址中不允许出现中文字符如果URL中需要包含中文这样的字符,则必须对中文字符进行编译(转义)2.URL编码原则:使用安全的字符去表示那些不安全的字符【使用英文字符去表示非英文字符】3.浏览器提供了URL编码与解码的API(1)encodeURL()编码的函数 var str=encodeURI('西游记') console.log(str);//str=%E8%A5%BF%E6%B8%B8%E8
2021-10-09 00:00:00
1195
原创 Ajax加强
xhr的基本使用1.定义:浏览器提供的javascript对象,通过它,可以请求服务器上的数据资源。2.使用xnr发起GET请求步骤:(1)创建xhr对象(2)调用xhr.open(‘请求方式’,‘URL地址’)函数(3)调用xhr.send()函数来发起Ajax请求(4)监听xhr.obreadystatechange事件,并指定处理函数【在这里面我们可以拿到服务器响应回来的数据】这里面要监听xhr对象的请求状态readyState与服务器的响应状态status var xhr=new
2021-10-03 19:57:21
158
原创 正则与字符串的操作
1.基本语法exec()函数用于检索字符串中的正则表达式的匹配,如果字符串中有匹配的值,则返回改匹配值,否则返回null语法规范正则表达式.exec(要匹配的字符串)分组正则表达式中()的内容表示一个分组,可以通过分组来提取自己想要的内容字符串的replace函数1.定义:replace函数用于早字符串中用一些字符替换另一些字符2.语法格式:字符串.replace(“要替换的字符串”,‘替换字符串’) <script > var str= '<div
2021-10-02 21:44:34
288
原创 利用Ajax对接口将数据渲染到页面中
步骤1.将要渲染数据的模板的大体框架搭好2.引入art-template引入模板,在Js文件中通过函数template(‘id选择器的名字’,要渲染的数据)并将其赋值给一个变量,将该变量放到我们写好的模板中[通过JQuery中的html来添加]3.上述模板都搭建好后,就开始写js函数啦(1)在Js文件中定义一个获取数据的函数,根据接口文档来写Ajax,判断数据是否获取成功,成功后将步骤2的代码贴上去这样就将数据渲染到页面中啦(2)里面的具体数据还是要根据接口的名字通过标准语法来添加,千万不要忘记调
2021-10-02 20:36:40
5421
2
原创 let与const关键字的区别
关键字let1.let是ES6中新增的用于声明变量的关键字*(1)let声明的变量只在所处于的块级有效【块级作用域是在{}内有效】(2)在一个大括号中,使用let关键字声明的变量才具有块级元素,var声明的关键字不具备这个特点(3)防止循环遍历编程全局变量(4)不存在变量提升【必须先声明才可以使用】(5)暂时性死区【声明的变量会暂时被绑定在块级作用域中】*let a=10;console.log(a)//a=10if(true){let a=20;}console.log(a)/
2021-09-24 16:42:37
197
原创 用户表单验证
案例:用户名验证功能需求:1.如果用户名输入合法,则后面提示的信息为:用户名合法,并且颜色为绿色2.如果输入的用户名不合法,则后面的提示信息为:用户名不符合规范,并且颜色为红色<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <m
2021-09-23 16:38:57
342
原创 正则表达式
正则表达式的概述1.正则表达式:用于匹配字符串中字符组合的模式2.作用:表单验证,检索替换那学府和某个模式的文本,过滤掉页面内容的敏感词,从字符串中获取我们想要的特定的部分3.特点:灵活性,逻辑性和功能性很强;可以迅速的用简单的方式达到字符串的复杂控制板正则表达式在JavaScript中的使用一。创建正则表达式1.调用RegExp对象的构造函数来创建语法规范:var 变量名=new RegExp(/表达式/) var regexp=new RegExp(/123/); con
2021-09-22 09:48:32
102
原创 递归函数,深拷贝,浅拷贝
递归1.定义:如果一个函数在内部可以调用其本身,那么这个函数就是我们的递归函数【函数内部自己调用自己】2.利用递归求数学题目题目:求1到n的阶层 function fn(n){ if(n==1){ return 1; } return n*fn(n-1); } console.log(fn(3));深拷贝,浅拷贝1.浅拷贝:只是
2021-09-21 20:55:09
140
原创 闭包的应用
闭包的应用一:点击li打印出当前小li的索引号for(var i=0;i<lis.length;i++){ (function(i){ lis[i].onclick=function(){ console.log(i); } })(i)}思路:首先要获取li元素,其次yongfor循环将li遍历出来然后给每个小li绑定一个立即执行函数,并将i传递出来3秒钟之后打印li里面的所有内容for(var i=0;i<li
2021-09-19 15:53:12
90
原创 闭包及其应用
严格模式1.JavaScript除了提供正常模式外还提供了严格模式。2.严格模式是采用具有先执行的javascript变体的一种方式【在严格条件下运行JS代码】,严格模式在IE10 以上的版本才支持,旧版本的浏览器中会被忽略掉3.好处:(1)消除了一些JS语法中一些不合理的地方,减少了一些怪异的行为(2)消除了代码的一些不安全的低档,保证代码的运行安全(3)提高了编译器变异的效率。增加了运行速度开启严格模式1.严格模式的两种情况:(1)为脚本开启严格模式(2)为函数开启严格模式一.为脚本开
2021-09-19 10:18:05
64
原创 apply,call,blind 方法总结
apply()方法1.作用:apply()方法调用一个函数 ,可以改变函数的this指向2.语法规范:fun.apply(thisArg,[argsArray])3.参数:(1)thisArg:在fun函数运行时指定的this值(2)argsArray:传递的值,必须包含在数组里面(3)返回值就是函数的返回值4.主要应用: 可以利用apply借助数学内置对象求最大值测试代码:bind()方法1.作用:bind()方法不会调用函数,但是能改变函数内部this指向2.语法规范:fun.bi
2021-09-17 22:38:11
359
原创 ES6新增方法
数组方法迭代(遍历)方法:forEach(),map(),filter(),some(),every()1.forEach()方法:语法:array.forEach(function(currentValue,index,arr))currentValue:数组当前项的值index:数组当前项的索引arr:数组对象本身代码测试 <script> var array=[1,2,3] // forEach方法 array.forEach
2021-09-16 22:29:08
59
原创 Call方法的作用以及组合继承
1.Call()函数的作用调用这个函数并且修改this指向调用方法函数名.call(thisArg,arg1,arg2…)thisArg:当前调用函数的this的指向对象arg1,arg2:传递其他的参数代码测试 <script> function fn(x,y){ console.log('调用了fn函数'); console.log(this); console.log(x+y);
2021-09-16 20:56:48
417
原创 原型对象中this的指向问题
1.在构造函数中,里面的this指向的是对象实例方法:设置一个全局变量that,让构造函数里面的that=this然后判断实例化对象和that是否相等测试代码 <script> var that=this; function Star(uname,usex){ this.uname=uname; this.usex=usex; that=this }
2021-09-07 14:12:45
426
原创 构造函数,实例对象,原型之间的关系【超集详细】
构造函数,实例对象,原型之间的关系1.构造函数里面有prototype对象,构造函数通过prototype的属性指向prototype对象2.prototype对象中有constructor属性,通过constructor属性来指向调用它 的构造函数3.通过构造函数可以实例化出实例对象,每个实例对象里面都_proto_属性,实例对象通过_proto_属性指向构造函数的原型对象,因为_proto_和prototype里面都有constructor属性,又可以指向构造函数具体的关系我们可以通过下面的图形
2021-09-07 12:17:05
231
原创 构造函数和原型对象
1.之前我们学过的创建对象的方式为3种:对象字面量,new Object() 自定义构造函数(1)利用Object来创建对象// 1.利用Object创建对象 var obj1=new Object()(2)利用对象字面量来创建对象 //利用对象字面量创建对象 var obj2={ name:'张三', age:18 }(3)利用构造函数来创建对象//利用自定义构造函数创建对象
2021-09-07 11:57:52
264
原创 面向对象进行tab栏的切换【史上最全讲解】
利用面向对象函数对tab栏实现增加,删除,修改等操作1.首先利用html和css对整体进行布局这里的布局就不过多的解释了直接附上代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" co
2021-09-05 21:14:36
1275
原创 新闻爬虫
#导入urllib.request模块import urllib.request#导入正则表达式模块import re#设置要爬虫的新闻网页data=urllib.request.urlopen("http://www.youkuaiyun.com/").read()#编码data=data.decode("utf-8","ignore")#设置正则表达式pat='href="(https://blog.youkuaiyun.com/.*?)"'#在网页中查找正则表达式allurl=re.compile(pa
2021-04-28 15:16:33
95
1
原创 Python---伪装成浏览器进行爬虫
爬虫技术之伪装成浏览器进行爬虫步骤:1.导入request模块2.设置要爬虫的网络地址3.设置浏览器的报头信息【文章末尾会简述如何查看浏览器的报头信息】4.添加报头信息【方法:addheadsers】5.进行爬虫6.将爬虫信息写入到本地文件例子:爬取优快云的一篇博客import urllib.request#设置网络地址url="http://read.douban.com/provider/all"#利用元组设置报头信息header=("User-Agent","Mozill
2021-04-28 14:31:40
1021
原创 浅谈基础模式,工厂模式,构造函数模式,原型模式,继承模式
一.基础模式var web2101=[{ name:'', age:20, gender:'men', tel:xxxx, address:'', 专业:xxx },{ name:'', age:20, gender:'men', tel:xxxx, address:'', 专业:xxx },{ name:'', age:20, gender:'men', tel:xxxx, address:''
2021-03-16 10:20:18
283
原创 行内元素与块级元素水平居中的方法
1.行内元素:超链接:<a></a>加粗:<strong></strong> <b></b>图片:<img src=" " />输入框:<input type="text" >下拉框:<select name=" " id=" "></select>标签:<label for=" "></label>行内元素:<span></spa
2021-03-03 09:32:01
964
原创 小白第三弹——选择器的优先级
在学CSS样式中我们可能遇到有时候自己想要的样式写了,但是运行的时候却没有达到我们想要的样式,这是我们就应该考虑选择器的优先级的问题啦!首先我们先来看一下各个选择器的有先级1.属性内部样式-------10002.id选择器0------------1003.类/伪类选择器/属性选择器----104.标签选择器/伪元素选择器/元素------15.!important 最高级 但是不纳入优先级的运算中 (不到迫不得已不建议使用)然后我们用代码测试以下,并感受以下优先级时如果体现的<
2021-01-15 11:15:53
121
原创 用HTML代码实现个人简历的编写
小白 第二弹——用html代码(完成下面简历的内容)写出个人简历话不多说 先放图首先先要明确两个知识点(html中table标签的使用)【注:以下代码是先测试两个知识点】先构造一个表格(1)跨列合并代码格式:<td colspan="3"></td>如果仅仅是将上述代码写在标签中会产生下面的情况合并那一行中多出个一个单元格,所以要在在该行中下面注释掉一个单元格如果要合并3列则需要在其下面注释掉2个单元格 <tr> <td
2021-01-12 11:09:56
28718
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人