技术无止境,人生仍探索。

热爱分享各种技术,探索生命奥妙,开拓精彩人生
私信 关注
fltenwall
码龄5年
  • 338,244
    被访问量
  • 127
    原创文章
  • 25,306
    作者排名
  • 701
    粉丝数量
  • 于 2015-11-18 加入CSDN
获得成就
  • 博客专家认证
  • 获得573次点赞
  • 内容获得189次评论
  • 获得1,735次收藏
荣誉勋章
兴趣领域
  • #算法
    #NLP
TA的专栏
  • 技术翻译
    4篇
  • CSS
    3篇
  • Vue
    4篇
  • react
    3篇
  • python
    42篇
  • python3开发博客
    4篇
  • 深度学习
    3篇
  • redis
    2篇
  • linux
    4篇
  • 七周七语言
    1篇
  • 数据库
    2篇
  • nosql
    2篇
  • mongodb
    1篇
  • javascript各种手写实现
    3篇
  • node
    1篇
  • 源码分析
    2篇
  • Git
    1篇
  • 软件破解
  • PHP
    1篇
  • 前端
    52篇
  • 语言开发
    3篇
  • 主成分分析
    3篇
  • 软件
    2篇
  • 编程思考
    4篇
  • C++
    1篇
  • JavaScript
    20篇
  • HTML5
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

(翻译)现代JavasScript:ES6+

ECMAScript 2015,也就是我们所知道的ES6,介绍了许多JavaScript的新特性。从那以后,每年都会增加一些新的特性。ES6及以后的扩展通常被称为现代JavaScript,因为有着这些重要的变化。这篇文章主要探索的是ES6, ES7, ES8, ES9以及ES10的新特性。什么是ECMAScriptECMAScript是一门脚本语言的标准。JavaScript是一门实现了ECMAScript标准的编程语言。ECMA国际是制定ES标准的协会。TC39是ECMA国际下的一个委员会,它决定Ja
翻译
36阅读
0评论
0点赞
发布博客于 2 月前

(翻译)九个项目助你成为前端高手

简介无论你是一个编程的新手还是你已经是一个有经验的开发者,在这个行业中,学习新的概念和语言/框架都是必须的,这样才能跟上快速的变化。举个例子来说,Facebook出的开源框架React只用了4年时间就成为了全球Javascript开发者的第一选择。当然,Vue和Angular也有可观的追随者数量。类似的还有Svelte,还有通用框架Next.js和Nuxt.js,以及Gatsby,Gastsby,Quasar,还有更多其他的。如果你想成为一个专业的Javascript开发者,你至少应该在不同框架和库方面有
翻译
57阅读
0评论
0点赞
发布博客于 2 月前

(翻译)使用javascript中的proxy(代理)

(翻译)使用javascript中的proxy(代理)我最近一直在研究javascript中的proxy,我对它的能力感到惊讶。Proxy允许你改变语言的基本结构(像object,arrays,functions…)下面是使用javascript代理的几个例子。对象冻结我们可以使用几行简单的代码来阻止对对象的改变操作,这本质上是冻结对象 const hero = { name: 'Saitama', age: 25, class: 'B', race: 'Human',
翻译
47阅读
0评论
0点赞
发布博客于 2 月前

(翻译)Weakmap详解

先看一个例子let obj = { name: 'toto' }// { name: 'toto' }这个对象能够被读取到,因为obj这个变量名有对它的引用// 将引用覆盖掉obj = null// 这个对象将会被从内存中移除,因为我们已经失去了对它所有的引用再来看另外一个例子let obj = { name: 'toto' }let arr = [ obj ]obj = null在这个例子中,对象{name:'toto'}不会被从内存中移除,因为数组arr保存了对它的引用
翻译
122阅读
0评论
0点赞
发布博客于 2 月前

子元素相对父元素垂直水平居中的八种方式

基本样式HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" />
原创
129阅读
0评论
0点赞
发布博客于 7 月前

实现左侧固定宽度, 右侧自适应的两栏布局的八种方案

HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=edge" /> <
原创
78阅读
0评论
0点赞
发布博客于 7 月前

animation动画全解

animation八大属性共用代码HTML<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta http-equiv="X-UA-Compatible" content="ie=
原创
355阅读
0评论
0点赞
发布博客于 7 月前

Vue项目中集成Echarts

Vue项目中集成Echarts这里主要使用两个封装Echarts的库:v-charts和Vue-Echartsv-chartsgithub地址v-charts官网使用安装npm i v-charts echarts -S结合Element一起使用<template> <div id="charts"> <el-tabs v-model="activeName" @tab-click="handleClick"> &
原创
234阅读
0评论
0点赞
发布博客于 7 月前

使用react-redux实现todoList

使用react-redux实现todoList一、Redux作用统一状态管理,将分散在各个组件中的状态全部放在统一的store对象中进行管理,适用于状态特别分散、状态共用较多、状态传递较深的情形。二、安装1.创建项目yarn init create-react-app todolist2.安装reduxyarn add redux redux-chunk3.目录结构规划src | -| commponents -| storeApp.jsindex.cssin
原创
441阅读
2评论
0点赞
发布博客于 8 月前

python3实现json转excel

数据[ { "name":"flten", "category":"com", "count":1, "location":"上海", "time":"2020-7-2" }, { "name":"flten", "category":"com", "count":1, "location":"上海", "time":"2020-7-2" }, { "name":"flten", "category":"com", "count":1, "locat
原创
959阅读
0评论
1点赞
发布博客于 8 月前

javascript一行代码实现数组降维并排序

降维并排序var arr = [ [1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14] ] ] ], 10];代码Array.from(new Set(arr.flat(Infinity))).sort((a,b)=>{return a-b})结果优点:拍平,去重,转数组,排序,行云流水,一气呵成,充分运用新特性????...
原创
79阅读
0评论
0点赞
发布博客于 8 月前

python3嵌套列表排序

嵌套列表排序列表:demolist = [[3,'b','2020-7-1'],[2,'e','2020-6-26'],[10,'a','2020-8-16']]排序:demolist.sort(key=lambda x: x[1], reverse=False)说明:reverse为False则按从大到小降序排列,为True则按从小到大升序排列示例:...
原创
275阅读
1评论
0点赞
发布博客于 8 月前

bug追踪的几种方式

bug追踪的几种方式(1)梳理逻辑:最好的方式是让程序按照自己所想的方式运行,而不是频繁的依靠console.log打印结果,想要达到这种效果就要先理顺自己的逻辑,看每一次返回的值是否有类型错误,判断条件是否有误(2)回溯:报错的问题可能不是bug的源头,可以打印中间结果一步一步进行回溯(3)排除:经常各种函数、方法之间有调用关系,为了防止bug定位错误,可以先局部排除独立函数或方法的代码,防止定位错位进行了修改,反而产生了更新的bug(4)恰当注释:对于代码调用关系、逻辑比较复杂、代码量又
原创
285阅读
0评论
0点赞
发布博客于 8 月前

python3时间格式化

python时间格式化import timeimport os# 获取文件修改时间(时间戳)dirpath = '/home/xl/project/demo.txt't = os.path.getmtime(dirpath)# 转化为本地时间time_local = time.localtime(t)# 格式化时间folderChangeDate = time.strftime("%Y-%m-%d-%H:%M:%S",time_local)# 只保留日期simpleDate =
原创
100阅读
0评论
0点赞
发布博客于 8 月前

python3分割路径、文件名、扩展名

import osfilepath = '/home/xl/project/demo.txt'(file_path, tempfilename) = os.path.split(filepath)# file_path = '/home/xl/project'# tempfilename = 'demo.txt'(file_name, extension) = os.path.splitext(tempfilename)# file_name = 'demo'# extension = '
原创
383阅读
0评论
0点赞
发布博客于 8 月前

python3 list去重、分割以及判断是否包含元素

list去重(嵌套list去重)# 普通list去重a=[1,2,3,4,1,2,3,4]a=list(set(a))print(a)#输出:[1, 2, 3, 4]# 嵌套list去重b=[[1,2,3,4],[1,2,3,4],[1,2,3,4]]b = [list(t) for t in set(tuple(_) for _ in b)]print(b)#输出:[[1, 2, 3, 4]]如果使用set()对嵌套list去重会报错:TypeError: unhashable
原创
302阅读
0评论
0点赞
发布博客于 8 月前

python3遍历列表、元组、集合的三种方式

已列表为例,元组、集合都可以使用以下三种方式进行遍历代码结果
原创
442阅读
0评论
1点赞
发布博客于 8 月前

python3continue造成的死循环问题

continue造成的死循环问题下面的代码中,由于i++位于continue之后,因此当i == 5时,后面的i++将永远不会执行,从而造成死循环问题。 # python continue死循环 i = 0 while i < 10: if i == 5: continue; print(i); i++;解决continue死循环问题将i++置于continue之前即可 i = 0 while i < 10: if i == 5: i++;
原创
376阅读
0评论
0点赞
发布博客于 8 月前

python3类型转换

数值与字符串互转# 数值转字符串numInt = 10numstr1 = str(numInt)numFloat = 10.5numstr2 = str(numFloat)# 字符串转数值strInt = '10'intNum = int(strInt)strFloat = '10.3'floatNum = float(strFloat)字符串转列表、元组、集合# 字符串转表达式str = '2 + 5'result = eval(str) # 7# 字符串转列表
原创
95阅读
0评论
0点赞
发布博客于 8 月前

python3对比字符串拼接的效率

对比字符串拼接的效率代码compareTime.pycompareTime2.py对比时间迭代10000次直接字符串拼接的方式更快迭代100000次使用数组转字符串拼接的方式更快迭代1000000次使用数组转字符串拼接的方式优势更加明显...
原创
207阅读
0评论
0点赞
发布博客于 8 月前

python3实现图片虚化显示轮廓

成就一番伟业的唯一途径就是热爱自己的事业。如果你还没能找到让自己热爱的事业,继续寻找,不要放弃。跟随自己的心,总有一天你会找到的。目标将一张图片进行虚化,只显示出其轮廓,一个很酷的效果,但代码却只需要四行。代码代码就只有这么短短的四行。下载依赖踩坑根据代码很容易联想是下载PIL,但结果:解决正确的方法是下载依赖Pillow执行结果对比查看完美!...
原创
427阅读
0评论
0点赞
发布博客于 8 月前

python3利用jieba分词

没有人一开始就能想清楚,只有做起来,目标才会越来越清楚。——马克·扎克伯格下载jiebapip3 install jieba创建测试文件jiebaDemo.txt编写代码import jiebafilepath = input("input your path:")with open(filepath,encoding='utf-8') as f: words = jieba.lcut(f.read()) print(words)执行结果得到的结果是一个li
原创
121阅读
0评论
0点赞
发布博客于 8 月前

python3提取指定文件夹下的所有文件名

如果你刻意练习某件事超过10000小时,那么你就可以达到世界级。——拉里·佩奇(Google创始人)提取指定文件夹下的所有文件名代码import oswith open('./listdir.txt','a') as f: path = input('path:') try: list = os.listdir(path) for i in range(0,len(list)): filename = os.path.spl
原创
692阅读
0评论
1点赞
发布博客于 8 月前

flask渲染模板文件

创建模板文件在vent1同级目录下创建templates文件夹,这是flask中默认在templates下寻找模板文件{{name}}的值是从渲染模板时使用的数据中获取python代码必须引入render_template,这个flask中提供的模板渲染函数/user/<username>中的username是动态的从url中获取传入的值name=username中的name要与模板中{{name}}相同启动服务远程访问...
原创
100阅读
0评论
0点赞
发布博客于 8 月前

使用flask开发第一个web服务器

安装pip3 install flask查看安装包pip3 list --format columns代码from flask import Flaskapp = Flask(__name__)@app.route('/')def hello_world(): return 'hello world!'if __name__ == '__main__': app.run()启动服务
原创
110阅读
0评论
0点赞
发布博客于 8 月前

python3安装并激活virtualenv环境

安装virtualenvpip3 install virtualenv查看virtualenv的版本virtualenv --version创建虚拟环境virtualenv venv1激活虚拟环境切换到创建的虚拟环境vant1的bin目录下source ./activate
原创
180阅读
0评论
0点赞
发布博客于 8 月前

python3开发博客计划

python3开发博客计划事由舍友不是做测试的,但是想转开发,需要一个比较完整的项目入手一门语言,上手一个框架,熟悉整个项目开发的流程,从最初的项目架构、界面设计、技术选型、方案评估、接口设计到最后的开发实现、上线部署,全流程走一遍,并能够实际运用起来开发的项目,思来想去还是开发一个博客比较合适。方案目前我想的用python3作为开发语言,使用flaskweb框架,数据库选用mysql和redis,前端将主要使用vue,先做一个雏形,初步迭代和优化。因为舍友从未使用python开发过实际项目,也没有
原创
80阅读
0评论
0点赞
发布博客于 8 月前

python3参数为整形(int)问题

问题昨天同事遇到一个问题,程序逻辑来回看了很多遍总觉得是没有问题的,那就应该不是程序的原因,而可能是忽略了某些细节点,结果也果真如此。在url拼接的参数中传入的整形是被当做字符串处理的,因此就需要接受参数后将参数进行类型转换。解决int(str)将参数被默认转为字符串的整数用int转为整数就可以了。...
原创
323阅读
0评论
0点赞
发布博客于 8 月前

Python3报错:TypeError: list indices must be integers or slices, not str

问题示例代码:strlist = ['a','b','c']for i in strlist: if strlist[i] > 0: ...报错:TypeError: list indices must be integers or slices, not str解决原因很简单:python里对list进行for遍历,默认第一个参数为list中的元素,而上面代码中的strlist[i]实际上strlist['a']。因此想要遍历list,对其中的string类型元素进行长短判断,
原创
2993阅读
0评论
0点赞
发布博客于 8 月前

python3中将json.dumps()结果显示为中文

问题今天同事问我一个编码报错的问题怎么解决,初步判断是用的方法没有encoding这个参数然后看了下代码:self.write(json.dumps(result,encoding='utf-8'))解决果然,json.dumps()这个方法是没有encoding这个参数的,要想将默认的ascii字符改为中文,应该将ensure_asciii设为Falseself.write(json.dumps(result,ensure_ascii=False))这样一来问题就解决了,中文也正确显式
原创
648阅读
0评论
2点赞
发布博客于 8 月前

python引入绝对路径

问题:当前文件位置为:/home/xmdd/tmp/project/main.py我想要引入的文件位置为:/home/xl/project/ChineseNER/tensorflow/train.py解决:用sys手动添加python搜索包的路径就可以了,具体代码如下:import syssys.path.append(r'/home/xl/project/ChineseNER/tensorflow')引入之后,就可以引入改路径下的python文件中的方法了,python自动去搜索。
原创
154阅读
0评论
0点赞
发布博客于 8 月前

python中列表转为路径

python中string也可以看做list,并调用list的方法,但是一旦调用原本的string就会变为[ .. , .. , ..]的格式,要想再拼接为string的形式就需要用for进行拼接,当然这个过程中也可以做很多的事情,比如路径修改。out_path = 'input_file=/home/xl/project/ChineseNER/tensorflow/test1.txt'split_list = output_path.split('/')# 去掉最后的test1.txtfile
原创
367阅读
0评论
0点赞
发布博客于 8 月前

tensorflow报错ValueError: Variable ... already exists, disallowed.

报错信息寻找解决方案因为保存了上次运行结束的变量,所以报错already exists,看网上的解决方案都是说将如下代码增加在代码开头tf.reset_default_graph()问题但问题来了,这个开头指的是????????????好尴尬啊,我尝试放了一个我觉得开头的问题,结果不对,当然最后是解决了,方法是没错的,但是要根据具体的代码放到不同的位置解决首先肯定是踩坑了,我直接在函数定义前后加,都是不对的,因为我是封装成了一个类给其他类调用的,因此下面两个是错误❌的:而在别的类中调
原创
1302阅读
1评论
1点赞
发布博客于 8 月前

python中的元组与json类型转化问题

问题描述下午一个同事问我一个问题,为啥写入的是元组,得到的结果是列表呢?我把代码看了好几遍,都没找出来所有然来,后来才知道原来是因为进行了文件读写,写入文件再读取的时候转化为了json,而python中的tuple转化为json就成了arrary,这是正确的,就算返回给前端,前端也只有array,而没有tuple,整个程序其实是没有错误的。关于python中的数据类型转化为json数据类型这个问题其实老早之前就知道,但是之前觉得这个表格瞅一眼以后需要时候再查就可以了,但是谁知道今天压根就没想起来。py
原创
886阅读
0评论
0点赞
发布博客于 8 月前

redis添加key与查看value

redis添加key新增key时必须同时设置filed和valuehset file_list 'a.txt' '2020-6-20+true+false+false'查看新增key的filed(字段)hkeys file_list查看新增key的filed对应valuehget file_list a.txt
原创
1198阅读
0评论
0点赞
发布博客于 8 月前

redis查看键(key)、字段(field)、和值(value)

查看所有的keykeys *查看指定key所有的字段和值hgetall project查看指定key的所有字段hkeys project查看指定key的field的值hget project demo1
原创
3989阅读
1评论
0点赞
发布博客于 8 月前

tornado出现object has no attribute错误

tornado object has no attribute错误错误描述下午程序运行时出现了一个匪夷所思的报错,说我实例化的pm类的对象没有pm_delProject方法,反复查验好几遍,确认是没有问题的,这种情况下也只能搜一搜Google了,结果大都是python关键字冲突的,但我这里明显不是这个原因啊。探明真相没有无缘无故的报错,但报错信息可能是有误导性的。——轩灵大大程序逻辑是没有问题的,反复排查,认真校对语法,结果发现是: app = tornado.web.Applicati
原创
132阅读
1评论
0点赞
发布博客于 8 月前

tensorflow版本与python版本不相容的问题

最近在服务器把python3装成了最新的3.8.3然后问题就来了…tensorflow无法正常执行了,看了下官网才知道,原来每个tensorflow支持的python版本是不同的,最主要的是现在还没有支持3.8.3的????????哭撩????????python与tensorflow版本的对应CPUGPU...
原创
1629阅读
1评论
2点赞
发布博客于 8 月前

一次性解决python3版本中的依赖(No module)问题

下载依赖(系统中容易缺失的包)yum -y install bzip2-devel db4-devel gdbm-devel libpcap-devel ncurses-devel openssl-devel readline-devel sqlite-devel tk-devel xz-devel zlib-devel重新编译在python安装目录下:make install
原创
346阅读
0评论
0点赞
发布博客于 8 月前

python3.8.3版本报错ModuleNotFoundError: No module named _ctypes

报错信息ModuleNotFoundError: No module named '_ctypes'原因python3.7以上版本需要一个新的依赖包libffi-devel,centos系统环境中缺乏这个包解决(1)下载yum install libffi-devel -y包yum install libffi-devel -y(2)在python3的安装目录下重新编译:make install结果一切都正常了。...
原创
1181阅读
0评论
1点赞
发布博客于 8 月前

python3安装——无冲突python2

linux和mac系统默认都是安装了python2的,并且pip的版本默认也是绑定python2的,若是希望在不冲突python2的情况下安装python3,并且使pip的版本互不影响,那就需要正确的安装方式了。由于在个人服务器、个人mac、单位服务器多次在保证不冲突python2的情况下安装python3,索性做个记录。下载压缩包wget https://www.python.org/ftp/python/3.8.3/Python-3.8.3.tgz解压到指定位置一般放在/usr/lcoal下
原创
86阅读
0评论
0点赞
发布博客于 8 月前

Vue对比React更利于开发的地方

Vue对比React更利于开发的地方:(1)vue的数据双向绑定:避免了自己获取和改变表单控件中的值(2)指令避免了自己很多函数和逻辑(3)computed和watch避免了手动监听数据(属性)变化
原创
79阅读
0评论
0点赞
发布博客于 8 月前

Vue中容易忽略的技术点(面试易问)持续更新,欢迎补充~

1.Vue父子组件生命周期的执行顺序父 beforeCreated父 create父 beforeMounted子 beforeCreated子 create子 beforeMounted子 mounted父 mounted2.Vue为什么设计成单向数据流?前端无法加锁,同时操作一个数据时容易造成数据不同步和数据混乱的问题3.props接收数组或对象时默认值为什么必须从一个工厂函数返回值获取?这是为了解决js中复杂数据类型浅拷贝的问题,工厂函数每次都调用时都会产生一个新的实例,返回的
原创
83阅读
0评论
0点赞
发布博客于 8 月前

python使用tornado开发Web服务器

代码#-*- coding:utf-8 -*-import tornado.webimport tornado.ioloopimport tornado.httpserverimport tornado.optionsfrom tornado.options import define, optionsfrom mm import mmdefine('port', type=int, default=8000, help='服务器端口')# 定义接口class into_Handl
原创
146阅读
0评论
0点赞
发布博客于 8 月前

使用bert-as-service简单快速生成词向量

下载依赖:pip install bert-serving-serverpip install bert-serving-client下载预训练好的中文模型:中文模型地址启动bert-serving-start$ cd /usr/local/bin# 替换为自己的地址$ bert-serving-start -model_dir /bertdemo/chinese_L-12_H-768_A-12编写脚本# train.pyfrom bert_serving.client im
原创
542阅读
0评论
0点赞
发布博客于 8 月前

python批量读取目录中的文件一次写入一个文件中

读取目录中所有文件任务描述将目录中所有的.txt文件中(10个文件共11万行数据)的内容写入到all.txt中,肯定是不能粘贴复制的,那就用程序来解决吧。代码import os# 打开写入文件file = open('all.txt','a',True,encoding='utf-8')# 获取当前路径pwd = os.getcwd()# 随机遍历读取目录中的文件files = os.walk(pwd)for path, dir_list, file_list in files:
原创
250阅读
0评论
1点赞
发布博客于 8 月前

linux文件夹及单文件的复制、移动及删除操作

linux文件夹复制将整个dir1文件夹(包含dir1本身)复制到dir2下(如果dir2不存在将创建)cp -r dir1 dir2只将dir1目录下(不包含dir1本身)的文件(包括文件和文件夹)全部复制到dir2中cp -r dir1/. dir2单文件复制cp a.txt dir # 将a.txt文件复制到dir文件夹下linux文件移动单文件移动(无论文件是否为空)mv a.txt dir # 将a.txt文件移动到dir文件夹下文件夹移动(无论文件夹是否为空)mv
原创
123阅读
0评论
0点赞
发布博客于 9 月前

Python实用技巧(实际工作经验)

Python实用技巧(实际工作经验)去除文件名后缀file_name = 'e1.csv'fileName = os.path.splitext(file_name)[0] # e1遍历文件夹中的文件# 在目录树中游走输出在目录中的文件名configPathString = os.walk(configPath.import_path)for path, dir_list, file_list in configPathString: # 根据文件名进行排序 file_list.s
原创
94阅读
0评论
0点赞
发布博客于 9 月前

你确实挺失败的,坚持100天吧!

你确实挺失败的坚持是一件很难的事情,包括写博客,想着是日更至少一博,有所思所想所感所悟便用博客记录,但刚发觉距离上一次发博已经是五天前了,《刻意学习》的作者说他成为畅销书作家的秘诀就是坚持1000天写作的计划。我相信没有人会怀疑坚持的力量,也都向往那个坚持到底的美好结果,也许是变得很强,也许是更有内涵,无论如何,当初立Flag的那一刻一定是想好了要面对困难、克服懒惰,本身克服困难挑战自己也是让人很有期待的。但往往总是坚持不下来呢?我不知道你是否赞同,坚持下去先是本能,再是不断说服自己继续坚持,再是成为习惯
原创
369阅读
2评论
3点赞
发布博客于 9 月前

前端MVC、MVP、MVVM三种架构模式对比(限前端范畴)

MVC问题:View不能独立处理用户事件一个View对应一个Model,复用性差适合无界面、多业务处理的后端使用模式主要使用的是策略模式MVP改良:用户事件由View处理Model与View完全解耦,View可抽离为接口提供给上层使用View可抽离为独立组件,适合事件处理问题Model与View的数据同步需要Presenter手动绑定,Presenter过重模式主要使用的是观察者模式MVVM改良View与Model自动同步,只需要指定View要显示的数据对应
原创
85阅读
0评论
0点赞
发布博客于 9 月前

pytorch实现线性回归

安装依赖pip install torch numpy matplotlib编写代码import torchimport torch.nn as nnimport numpy as npimport matplotlib.pyplot as pltfrom torch.autograd import Variable# Hyper Parametersinput_size = 1output_size = 1num_epochs = 10000learning_rate = 0.
原创
119阅读
0评论
1点赞
发布博客于 9 月前

python高效目录移动

目录移动原始文件位置执行代码import shutilsourcePath = './testDir'targetPath = './targetDir'shutil.move(sourcePath,targetPath)代码执行后文件位置目录移动成功。
原创
55阅读
0评论
0点赞
发布博客于 9 月前

python文本向量化对比词的相似度

文本向量化创建一个目录,并创建data文件夹安装依赖pip install gensim下载数据集数据集大概1.2G,下载完成后放在data文件夹下数据预处理创建数据预处理文件data_pre_process.py# -*- coding: utf-8 -*-from gensim.corpora import WikiCorpusimport jiebafrom langconv import *def my_function(): space = ' ' i
原创
207阅读
0评论
0点赞
发布博客于 9 月前

解决Linux下路径过长一行无法显示的问题

解决Linux下路径过长一行无法显示的问题1.修改.bash_profile文件(用户根目录下)vi打开.bash_profile文件vi .bash_profile找到PS1或者新增加PS1的导入export PS1="[\u@\h \W]\$"注意W是大写2.使修改立即生效source .bash_profile...
原创
212阅读
0评论
0点赞
发布博客于 9 月前

Python中的面向对象

Python面向对象类的简单示例:class Person: # 构造方法 def __init__(self,name='flten',age=23): self.name = name self.age = age # 定义实例方法 def say(self,content): print(content)p = Person()print(p.name,p.age)p.name = 'flten'prin
原创
56阅读
0评论
0点赞
发布博客于 9 月前

Linux下配置vim编辑器风格

Linux下配置vim编辑器风格(1) 确认当前用户目录下存在~/.vim/colors目录,没有则新建,安装的Vim配色方案对应.vim文件需放在该目录下cd ~/.vimmkdir colors(2) 下载或编辑某个配色方案的**.vim**文件,保存到~/.vim/colors目录下。例如:git clone https://github.com/tomasr/molokai.gitmv molokai.vim ../../(3) 修改Vim配置文件~/.vimrcvi ~/.v
原创
73阅读
0评论
0点赞
发布博客于 9 月前

python数据去重并存入redis数据库

python数据去重并存入redis数据库import redisimport osimport re# redis数据库连接r = redis.StrictRedis(host='localhost', port=6379, db=0)# 利用redis total(set) 去重def add(): # os.getcwd 返回表示当前工作目录的字符串 path = os.getcwd() + "/data/source_word/" # os.listdir(
原创
257阅读
0评论
0点赞
发布博客于 9 月前

python进行数据处理

python数据处理json文件处理test.json[{ "_id" : { "$oid" : "5cc9308f831b973d657f0f4e" }, "名称" : "歼-16战机", "产国" : "中国", "图片" : "http://images.huanqiu.com/sarons/2014/05/78c43ad2aad6411d2cda1328555a0bef.jpg", "简介" : "
歼16沈阳飞机公司为海军航空兵所研发的一款新型多用途战机,是歼-11BS战斗机的攻击机版本
原创
94阅读
0评论
0点赞
发布博客于 9 月前

python中的文件I/O

python文件I/O使用Path获取目录from pathlib import *# 获取当前目录p = Path('.')# 遍历当前目录下所有文件和子目录for x in p.iterdir(): print(x)# 获取上一级目录p = Path('../')# 遍历上级目录下的所有文件和子目录for x in p.iterdir(): print(x)# 获取上级目录及其所有子目录下的.py文件for x in p.glob('**/*.py'):
原创
53阅读
0评论
0点赞
发布博客于 9 月前

python中的字典

python中的字典创建字典key必须是不可变类型,因此列表不能作为dict的key使用{}创建lang = {'python':'python3',32:'java',(20,30):'lua'}print(lang) # {'python': 'python3', 32: 'java', (20, 30): 'lua'}使用dict()创建字典,可传入多个列表或元组参数作为key-value对,每个列表或元组将被当成一个key-value对,因此这些列表或元组都只能包含两个元素。my_l
原创
65阅读
0评论
0点赞
发布博客于 9 月前

python中的列表和元组

python中的列表和元组列表和数组区别:列表可变,而元组不可变。(包含的元素是否可更改)创建:# 定义列表my_list = ['01','demo',3]# 定义元组my_tuple = ('01','demo',3)通用用法:只要不涉及改变元素的操作,列表和元素的用法是通用的。(1)通过索引使用元素索引从0开始,也支持负数索引(从-1开始)my_list = ['01','demo',3]print(my_list[0]) # 01my_tuple = ('01','
原创
109阅读
0评论
3点赞
发布博客于 9 月前

Lua(第一天)

Lua(第一天)Linux安装curl -R -O http://www.lua.org/ftp/lua-5.3.0.tar.gztar zxf lua-5.3.0.tar.gz基础动态类型,不需要声明类型,而在运行时决定数据类型没有整数类型,只有64位浮点数使用…来做字符串拼接使用#来获取字符串长度nil具有自己的类型,表示“找不到”或者“不存在”表达式1.布尔操作与或非用and、or、not关键字表示。lua逻辑表达式会“短路”2.比较大小==和~=可以比较任意两个值相
原创
47阅读
0评论
0点赞
发布博客于 9 月前

mongodb数据库配置及使用

mongodb数据库使用下载wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.6.tgz解压tar -xvzf mongodb-linux-x86_64-3.2.10.tgz 移动mv mongodb-linux-x86_64-3.2.10 /usr/local/mongodb cd /usr/local/mongodb/ 配置环境变量vi /etc/profile export MON
原创
72阅读
0评论
0点赞
发布博客于 9 月前

redis数据库使用(一、安装与五大数据类型)

redis说明:工作中使用过mongodb数据库,但没有使用过redis,现在工作中需要使用redis,因此将redis使用总结如下,后续持续更新。安装$ sudo apt-get update$ sudo apt-get install redis-server启动$ redis-server # 这种方式启动redis 使用的是默认配置查看是否启动打开另外一个命令窗口$ redis-cli # 连接本地的redis服务redis 127.0.0.1:6379>$ Ping
原创
111阅读
0评论
0点赞
发布博客于 9 月前

记一次尴尬的Linux关机记

记一次尴尬的Linux关机记昨天晚上同事让帮忙关下服务器(因为是研究使用的,所以并不保持常开),这样的操作当然不是常用的,因为相关的命令记得也比较模糊,于是我输入的指令是:halt -h确实“关机”了,只是第二天早上同事说为啥电源还开着????我…恍然大悟原来这个指令是只关闭系统,并不关闭电源的,经过这次尴尬之后,稍微整理一下Linux关机的相关命令吧。关闭系统halt关闭系统并且关闭电源halt -p关闭系统,并且不留下记录halt -d立即关机shutdown -h no
原创
156阅读
0评论
0点赞
发布博客于 9 月前

二手《代码大全》阅读笔记

二手《代码大全》阅读笔记因为暂时没有完整的去阅读《代码大全》这本巨著,因此就去看了其他完整看过这本书的人的笔记,捡一些感觉不错的先整理着,后期自己肯定是要去亲自读这本书的。Switch的正确用法default不要做任何有正常case的操作,它专门用来和检测和处理错误,当然如果业务中把某些case都当成错误的话,也可以统一写到default`中封装和抽象两个原则没有封装时,抽象往往很容易打破。封装的原则是让可访问性尽可能的低。只给外界暴露有限的接口关于函数函数是主要的作用是节约空间和提高性
原创
130阅读
0评论
0点赞
发布博客于 9 月前

linux环境下安装node及环境变量配置

linux环境下安装node及环境变量配置下载$ wget https://nodejs.org/dist/v12.17.0/node-v12.17.0-linux-x64.tar.xz 解压$ tar xf node-v12.17.0-linux-x64.tar.xz$ tar xf node-v12.17.0-linux-x64.tar.xz$ tar xf node-v12.17.0-linux-x64.tar.xzv12.17.0配置环境变量$ sudo
原创
172阅读
0评论
0点赞
发布博客于 9 月前

javascript实现函数防抖与节流

github地址:JavaScript各种手写防抖:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时function debounce(fn, delay) { var timer; return function () { var _this = this; // 保存函数的this指向 var args = arguments; //每次触发事件时都取消之前的延时调用方法 if (timer) {
原创
130阅读
0评论
0点赞
发布博客于 9 月前

手写Jsonp

github地址:JavaScript各种手写jsonp /** * jsonp获取请求数据 * @param {object}options */ function jsonp(options) { // console.log(options); // 1. 产生不同的函数名(函数名随机) let callBackName = 'itLike' + Math.random().toString().subst
原创
177阅读
2评论
0点赞
发布博客于 9 月前

js完美深拷贝

github地址:JavaScript各种手写实现//判断是否为复杂数据类型const isComplexDataType = obj => (typeof obj === 'object' || typeof obj === 'function') && (obj !== null);//利用 WeekMap() 的键对自己所引用对象的引用都是弱引用的特性,在没有其他引用和该键引用同一对象的情况下,这个对象将会被垃圾回收//为了解决循环引用的问题,设置一个哈希表存储已拷贝过
原创
239阅读
0评论
0点赞
发布博客于 9 月前

react-thunk原理及源码分析

git地址:前端流行框架源码分析????感慨:react-thunk真的是经典的不能再经典的中间件,它对applyMiddleware的利用真的是登峰造极。react-thunk源码分析react-thunk源码:function createThunkMiddleware(extraArgument) { return ({ dispatch, getState }) => next => action => { /** *如果ation是函数,就调用这个函
原创
277阅读
0评论
0点赞
发布博客于 9 月前

redux源码逐行分析

git地址:前端流行框架源码分析????说明:Redux源码ES5版本的逐行解析,所有的英文注释全部做了意译。版本:4.0.5源码位置源码逐行解析(注释逐行翻译)'use strict';Object.defineProperty(exports, '__esModule', { value: true });function _interopDefault (ex) { return (ex && (typeof ex === 'object') &&
原创
135阅读
0评论
0点赞
发布博客于 9 月前

一天接收了131份前端面试简历......(面试总结)

简述:前段时间面试前端同学,只周四一天收到了131份简历,而且基本都是已离职状态(估计是公司倒闭或者被裁了),到了第二天boss直聘上还是不停闪烁求职者的消息,非常能够感受到大家求职的迫切感。由于周五要进行面试,我需要当天四点前选出大约十份简历,然后约第二天的面试,因此我需要三个小时看完这131份简历,平均一分半钟就要看完一份,像上学时候老师判卷子一样,一开始我是一份一份认真去看,从自我介绍,到个人技能,再到项目经历,我专门整理了一个excle表格了,统计年龄、性别、学历、工作时间、核心技能、项目经验、简
原创
535阅读
1评论
1点赞
发布博客于 9 月前

对技术路线的思考(共勉)

对技术路线的思考精读《为什么专家不再关心技术细节》地址:https://juejin.im/post/5ce2055f5188251cf708b3d2感悟:(1)技术深度对于技术人的重要程度随着年龄是变化的作为一个新人,尽可能的了解更多的技术细节是很重要的,因为在没有足够的工程项目沉淀的情况下,技术细节和深度往往是评价一个技术人能力的重要标准。而除了深入技术以后,随着年龄的增长,软能力成为了评价一个技术人主要的方面。一个人不可能永远在代码一线,身体状况不允许,公司制度也不会允许,就算不转向管理岗位
原创
136阅读
0评论
1点赞
发布博客于 9 月前

大前端常用技术(持续更新)

大前端常用技术Vue系列Vue全家桶:Vue+vuex+vue-router+veu-cliVue服务端渲染SSR:vue-nuxtVue组件库:vant,element,iView…Vue全栈:Express(koa,egg)+monogdb(mysql)+vue+vue-cli+vuex+vuex-router+vant+less(sass)+webpack+babeltypescript+express+vue+…React系列React全家桶:react+redux+rea
原创
312阅读
0评论
0点赞
发布博客于 9 月前

Deno探索

Deno探索:目标:利用deno创建一个web服务器,比较deno与node的区别安装(mac):curl -fsSL https://deno.land/x/install/install.sh | sh安装之后根据提示,设置环境变量:export DENO_INSTALL="/Users/fltenwall/.deno"export PATH="$DENO_INSTALL/bin:$PATH"其他操作系统安装方式参见官网:https://deno.land/manual/gettin
原创
145阅读
0评论
0点赞
发布博客于 9 月前

从有限状态机看现代前端开发

有限状态机与现代前端开发有限状态机是可计算理论中的一种数学模型,前端开发可以看成是在维护各种状态机的状态。有限状态机的特征:状态总数有限任一时刻,只处在一种状态之中某种条件触发后,会从一种状态转变到另一种状态有限状态机与前端(一)当前MVVM与有限状态机当下MVVM框架都是用状态来描述界面(state=>view),前端本质上就是在维护各种状态前端代码编写的核心在于:使用最合理的状态管理界面,用最合理的动作实现状态变更前端开发时需要考虑:(1)页面有几种状态(初始化?成功?失
原创
89阅读
0评论
0点赞
发布博客于 9 月前

手写call和apply方法实现

call var name = 'flten'; var obj = { name: '轩灵' }; function fn(a, b, c) { console.log(a + b + c + this.name); }; Function.prototype.mycall = function(obj){ //判断是否为null或者un...
原创
304阅读
0评论
0点赞
发布博客于 1 年前

js递归实现深拷贝

function deepCopy(obj,newObj) { for(var key in obj){ if(obj.hasOwnProperty(key)){ var objValue = obj[key]; if(!(objValue instanceof Object)){ ...
原创
184阅读
0评论
0点赞
发布博客于 1 年前

Vue丐版数据双向绑定

HTML<div id="app"> <form> <input type="text" v-model="number"> <input type="text" v-model="number"> </form></div>创建VM实例window.onload = fu...
原创
49阅读
0评论
0点赞
发布博客于 1 年前

JS利用闭包实现缓存器策略

作用:以空间换时间,重复的计算将从缓存中取数而不是计算,提高效率。代码: /** * 缓存器策略计算阶乘 * @param val * @returns {factorial2} */ function factorial(val){ let arr = []; return function factorial2(val){ let re...
原创
94阅读
0评论
0点赞
发布博客于 1 年前

git操作远程仓库

配置密匙:接下来进入C/user/.ssh文件,可以看到密匙和公匙文件进入到Github上输入密匙:title可以随意设置,Key即为公匙在进入到gitBash,密匙远程绑定:设置用户名、账户:复制github上自己创建项目的地址,克隆远程仓库代码:提交代码到远程仓库:...
原创
85阅读
0评论
0点赞
发布博客于 2 年前

javascript实现深拷贝与浅拷贝

一、浅拷贝 //定义浅拷贝函数 function copy(obj){ var result = {}; for(var attr in obj){ result[attr] = obj[attr];//字符串是按值进行赋值 } return result; }对于基本数据类型的拷贝是按值传递的: var objCopy = {name : 'flt...
原创
117阅读
0评论
0点赞
发布博客于 2 年前

javascript中的==与===

原创
811阅读
0评论
0点赞
发布博客于 2 年前

CSS选择器详解

(1)#### (1)结构伪类选择器1):first-child、:last-child、:nth-child(index)、:nth-last-child(index)先创建一个列表: <ul> <li>1</li> <li>2</li> <li>3</li> <li>4<...
原创
257阅读
0评论
2点赞
发布博客于 2 年前

LESS核心

LESS1.基础(1)说明Less是CSS的一个预处理程序,可以编译为CSS。使用Less可以实现CSS的动态书写,提高代码的重用性,降低冗余。(2)配置1)服务器配置使用Node进行配置,或使用Webstorm作为本地服务器2)借助第三方工具本地编译工具:Koala 网址 http://koala-app.com/index-zh.html使用方式:将写好的Less文件自动编译...
原创
127阅读
0评论
0点赞
发布博客于 2 年前

CSS3动画(过渡、2D变形、3D变形)

1.过渡transition1)说明:作用在进行变化的元素上,有四个属性值:property(目标属性),duration(过渡时长), curve(运动曲线),delay(开始时间)创建一个空div,为它设置样式: div{ width:100px; height:100px; background-color:lightblue; margin:200px a...
原创
2280阅读
1评论
27点赞
发布博客于 2 年前

Flex弹性布局详解

Flex弹性布局说明:重点是分清楚主轴方向、侧轴方向的设置,作用在父元素和作用在子元素上的属性。(1)控制方向flex-direction控制主轴方向,取值有row(默认) |row-reverse | column | column-reverse(垂直方向翻转)align-items控制侧轴方向,取值有strenth(默认) | flex-start(顶部对齐) |flex-end(底...
原创
1073阅读
0评论
2点赞
发布博客于 2 年前

详解块级元素、行内元素、行内块级元素类型、区别及相互转化

1)块级元素特点:1.总是从新的一行开始2.高度、宽度都是可控的3.宽度没有设置时,默认为100%4.块级元素中可以包含块级元素和行内元素5.块级文字元素中不能放入其他块级元素6.块级大多为结构性标记常见块级元素: <center>...</center> 地址文字 <h1>...</h1> 标题一级 <h2...
原创
4149阅读
3评论
24点赞
发布博客于 2 年前

详解圣杯布局

圣杯布局html结构:<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-sc...
原创
545阅读
0评论
1点赞
发布博客于 2 年前

HTML5语义化

HTML5语义化标签HTML5主要的语义化标签<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title></head><body> <header> <!-...
原创
105阅读
0评论
0点赞
发布博客于 2 年前

理解闭包

一、闭包的概念很多书籍上都将嵌套函数中内部函数使用外部函数中定义的局部变量,返回内部函数实现对外部函数局部变量的使用作为闭包的定义,但实际上我们可以将嵌套函数中这种闭包的情况作为闭包的一种特殊情况。我们可以将闭包理解为是由函数和函数所声明的词法环境的结合。即一个函数引用了自由变量,且这个被引用的自由变量将和这个函数一同存在,即使是在该变量已经离开了创造它的环境时也不例外。二、闭包示例<...
原创
135阅读
0评论
0点赞
发布博客于 2 年前

jQuery基础选择器和层次选择器示例

一、基础选择器<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript" src="jquery-3.3.1.js"></sc...
原创
155阅读
0评论
0点赞
发布博客于 2 年前

jQuery基础特性

1、jQuery别名//$是jQuery的别名 $(function(){ alert("$"); }); jQuery(function(){ alert("jQuery"); }); //解决库的别名冲突问题 var jq=jQuery.noConflict(); jq(function(){ alert("jq"); })2、DOM...
原创
535阅读
0评论
2点赞
发布博客于 2 年前

《精通C++》1200页实践——第一天

一、变量1.变量(Variable)可以保留数据的内存地址名,是计算机内存中的一个命名存储空间,用于保存一条数据;是表示计算机随机存取存储器(RAM)中位置的符号名称。2.C++中所有变量使用之前必须先进行定义。二、计算机系统:硬件和软件硬件(Hardware)组成1、CPU(Central Processing Unit)包括两个部分:控制单元(Contral Unit)与算术和逻辑...
原创
121阅读
0评论
1点赞
发布博客于 2 年前

我对编程的思考

思考的由来最近想深入研究JavaScript这门语言,自然免不了找来许多被奉若圣经的书,比如《JavaScript精粹》、《JavaScript忍者秘籍》、《精通JavaScript》等,这些书中主要探讨的问题诸如闭包、词法作用域、this指向问题、原型继承等问题,着实是我在深入学习这门语言之前所未曾预料到的。就像很多国内的培训机构在给来培训Web前端的学生讲的一样:JavaScript是用来给...
原创
276阅读
2评论
2点赞
发布博客于 2 年前

《你不知道的JavaScript(第一卷)》笔记——作用域和闭包

1.函数作用域(1)属于该函数的全部变量都可以在整个数范围内使用及复用(2)目的:隐藏内部实现(最小暴露原则)(3)解决变量冲突发方式:全局命名空间(将所有变量附在一个专门的对象身上当做属性使用);模块管理2.使用自执行函数(IITE)的理由使用函数自执行可以解决具名函数污染所在作用域的问题,自执行函数将作为函数表达式只能在该函数内部被访问。此时函数名被绑定在函数表达式自身函数内,而...
原创
105阅读
0评论
0点赞
发布博客于 2 年前

《JavaScript启示录》笔记(完结)——Array(),String(),Number(),Boolean(),null,undefined,Math及总结

//1.传入一个参数为设置数组长度,传递多个参数则分别添加索引 var arr = new Array(1,2,3); var arr2 = new Array(10); console.log(arr[2],arr.length);//3,3 console.log(arr2[2],arr2.length);//undefined,10 //2.一个值任何时候都可以添加到数组的任何...
原创
150阅读
0评论
1点赞
发布博客于 2 年前

《JavaScript启示录》笔记——函数原型属性

//1.JS会为每一个Function()实例创建一个对象,无论是否用作构造函数 //2.创建函数实例时,总是拥有一个prototype属性,该属性是一个空对象 var func = function () {}; console.log(func.prototype); console.log(typeof func.prototype);//Object //3.默认...
原创
94阅读
0评论
1点赞
发布博客于 2 年前

《JavaScript启示录》笔记——作用域链和闭包

//1.JS中的三种作用域 var num1 = 1;//全局作用域 console.log(num1) var func = function () { var num2 = 2;//函数作用域 console.log(num2);//2 console.log(num1);//1 }(); // console.log(num2)未定义报错提示 ...
原创
109阅读
0评论
1点赞
发布博客于 2 年前