
编程
文章平均质量分 70
Alfred_|_derflA
专注之后,始能忘忧...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Python(十七)- Excel操作:xlsxwriter绘制图表
上一篇用一个简单实例描述了openpyxl和xlsxwriter对Excel表格的操作,本文则实例介绍一下xlsxwriter图表的绘制。一、Chart类简介Chart类是用于在 XlsxWriter中实现图表的模块基础类。支持的图表类型有:面积、条形图、柱形图、折线图、饼图、散点图、股票和雷达等。1.图表创建:Chart通过指定图表类型的工作簿的add_chart()方法来创建图表对象。# e.g. chart = workbook.add_chart({'type': 'column'})原创 2021-03-28 18:01:18 · 5586 阅读 · 1 评论 -
Python(十六)- openpyxl和xlsxwriter对Excel的操作
前几天,项目中有个小需求:提供Excel的上传下载功能,使用模块:openpyxl 和 xlsxwriter,这里简单记录一下。1.简介Python中操作Excel的库非常多,为开发者提供了多种选择,如:xlrd、 xlwt、xlutils、xlwings、pandas、 win32com、openpyxl、xlsxwriter等等。其中:前三个一般混合使用,对Excel读写操作,适合旧版Excel,仅支持 xls 文件;win32com 库功能丰富,性能强大,适用于Windows;xlwin原创 2021-02-28 15:48:37 · 2857 阅读 · 2 评论 -
Python(十五)- 创建二叉树和遍历的实现
树(tree)是一种非线性的数据结构,是一种抽象数据类型(ADT),用来模拟具有树状结构性质的数据集合,它是由n(n>0)个有限节点通过连接它们的边组成一个具有层次关系的集合。1.简介树的结构十分直观,而树的很多概念定义都有一个相同的特点:递归,也就是说,一棵树要满足某种性质,往往要求每个节点都必须满足。例如,在定义一棵二叉搜索树时,每个节点也都必须是一棵二叉搜索树。2.创建二叉树2.1.python模拟栈的实现class Empty(Exception): passcla原创 2020-06-21 20:51:50 · 588 阅读 · 0 评论 -
数据结构与算法(一)- 常见的数据结构及应用场景分析
算法中,往往都会涉及数据结构的选择和使用。本篇博文主要描述一些常用的数据结构。如:字符串、数组队列双端队列链表栈树1.字符串、数组(String & Array)字符串转化数组和字符串是最基本的数据结构,在很多编程语言中都有着十分相似的性质,而围绕着它们的算法面试题也是最多的。很多时候,在分析字符串的过程中,我们往往要针对字符串当中的每一个字符进行分析和处理,甚至有时候我们得先把给定的字符串转换成字符数组之后再进行分析和处理。举例:翻转字符串“algorithm”。原创 2020-06-21 20:49:42 · 1791 阅读 · 0 评论 -
Python(十四)- 多任务:进程、线程、协程
实际开发中,经常会面临一些并发问题的方案和设计,通常会有性能优化和提升的需求。多任务处理多任务:指的是操作系统同时运行多个任务。 可分为并行和并发。多任务编程的目的就是通过应用程序利用多个计算机核心达到多任务同时执行的目的,以此来提升程序执行效率。并发:指能处理多个同时性活动的能力,并发事件之间不一定要同一时刻发生。可以看成:一个处理器同时处理多个任务,每个任务放在不同时间片段,快速交替执行。并行:指在同一时刻,有多个任务在多个处理器上同时执行。多任务的处理方式通常为:多进程、多线程、进原创 2020-06-21 20:43:38 · 447 阅读 · 0 评论 -
Python(十三)- 常用内置模块与第三方库
python具有庞大的用户群,因其语法简洁,开发效率高而备受欢迎,同样,它的标准库与第三方库的支持也比较完善。这里做些简单的整理。常用内置模块与第三方库一般存放于Python安装目录下的 lib/site-packages 目录中。1.常用的内置模块time: 时间模块datetime模块: datetime模块是对time模块的一个高级封装(time包基于C语言的库函数)random模块: Python中的random模块用于生成随机数re: 正则模块sys模块: sys模块提供了一原创 2020-06-21 20:40:25 · 6667 阅读 · 0 评论 -
Python(十二)- 基础知识点汇总
Python 语言如今风靡一时,因其简单易学的语法和庞大完善的社区支持深受程序员的喜爱,本篇博文主要整理一下 Python 相关的基础知识以及一些汇总。一、知识点概览1.Python 基本数据结构与类型转换2.作用域和命名空间3.内存管理和垃圾回收4.异常处理5.类与对象6.闭包与装饰器7.实例方法、静态方法和类方法8.魔法方法9.模块与包10.迭代器和生成器11.浅拷贝和深拷贝12.常见的高阶函数13.多任务和 GIL14.PEP8 规范二、解析与说明1.Pyth.原创 2020-05-23 11:27:40 · 770 阅读 · 0 评论 -
个人网站之GitBook的简单使用
相比于博客网站(如:优快云、简书、Hexo搭建的个人博客等),个人感觉GitBook更能做一些系列型的技术存档与学习,前者更适合做一些笔记的整理和技术分享,而GitBook的作用相当于将这些笔记做了一些归纳,类似电子书的方式。对于查询资料和文档整理会更好些,当然,工具的使用因人而异。1.环境安装使用之前,先确保安装了 Git 和 Node.js。1.1.安装 Git 工具传送门...原创 2020-04-15 21:37:34 · 1374 阅读 · 0 评论 -
Python(十一)- 命令行参数选项解析
Python中模块和库比较丰富,这里记录一下关于命令行解析相关的模块。1.sys 系统模块通常,初学者都会使用 sys.argv收集命令行参数(执行py文件的参数选项,得到一个参数列表,通过切片和索引可以获取相应的选项和参数,继而去做相应的业务逻辑处理。2.docopt 模块docopt 是一个参数解析的库,与众不同的是在代码的最开头使用"""文档注释的形式写出符合要求的文档,会自动...原创 2020-04-15 21:34:52 · 664 阅读 · 0 评论 -
web前端(八):webpack的使用
webpack 是一款模块加载器兼打包工具,它能够把各种资源,例如js(含JSX)、样式(含less/sass)、图片等都作为模块来使用和处理。1.简介Webpack 是一个模块打包器。根据模块的依赖关系进行静态分析,然后按照指定的规则将这些模块生成对应的静态资源。相比于 gulp、grunt 等构件工具,WebPack 是一种模块化的解决方案,适合一些前后端分离项目的的场景,模块间依...原创 2020-04-15 21:32:40 · 397 阅读 · 0 评论 -
web前端(七):gh-pages部署到GitHub
有时需要将一些前端静态资源部署到GitHub上,如博客、在线简历这类的情况。这只涉及一些简单的页面和静态文件,为了减少一些脚本的使用,前端有gh-pages这样一个模块,可以帮助部署到GitHub上。1.注册 GitHub 账号确保有一个GitHub账号,新建仓库,并设置与本地关联,具体步骤参考网上的资料。2.创建 gh-pages 分支为了不影响项目的开发,在 GitHub 上创建...原创 2020-04-15 21:28:15 · 2726 阅读 · 0 评论 -
web前端(六):静态资源压缩
前端的静态资源压缩的方式有很多,这里记录一下 Grunt 和 Gulp 的使用1. Grunt压缩Grunt3是基于NodeJS的一个自动化压缩、合并、测试等构建工具,可用npm安装,任务文件Gruntfile.js放在项目的根目录下。1.1.安装npm install -g grunt-cli1.2.新建 package.json文件内容如下:{ "name": "...原创 2020-04-15 21:26:24 · 1304 阅读 · 0 评论 -
web前端(五):CSS布局之Grid网格布局
以下资料来源于网络。1.简介CSS网格布局(又名“网格”)是一个二维的基于网格的布局系统,其目的只在于完全改变我们设计基于网格的用户界面的方式。Grid是第一个专门为解决布局问题而生的CSS模块雷切尔·安德鲁(Rachel Andrew)的书为CSS Grid布局准备。 这本书对网格布局做了彻底、清晰的介绍,也是是整篇文章的基础。Chris Coyier的Flexbo...原创 2020-04-15 21:23:53 · 1049 阅读 · 0 评论 -
web前端(四):CSS布局之flex弹性布局
布局的传统解决方案,基于盒状模型,依赖 display 属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。2009年, W3C提出一个新方案: Flex布局1.Flex 简介Flex 是 Flexible Box的缩写, 意思是"弹性布局", 用来为盒状模型提供最大的布局灵活性,任何一个容器都可以设置为Flex布局模式...原创 2020-04-15 21:18:07 · 821 阅读 · 0 评论 -
web前端(三):CSS布局之双飞翼、圣杯布局
本文简单整理一下前端样式中的经典布局方式。1.三栏布局所谓的 ‘三栏布局’, 即:左右两栏固定宽度,中间部分自适应的布局方式。1.1.相同点双飞翼与圣杯布局的相同点:都是浮动布局,在实现三栏布局;左右两边加上负的margin值,使之与中间并排;中间盒子优先渲染,两边的盒子框子固定不变,即使页面宽度变小,也不影响浏览。1.2.不同点圣杯布局:通过父容器的内边距(pad...原创 2020-04-15 21:08:06 · 362 阅读 · 0 评论 -
web前端(二):HTML标签常用属性和CSS样式
本文主要记录一下HTML标签的常用属性和CSS样式。1.一些特殊标签标签描述<b>粗体字<strong>粗体字,强调<i>斜体字<em>斜体字,强调<dfn>斜体定义<u>底线<ins>底线,插入文字<strike>...原创 2020-04-15 21:05:14 · 646 阅读 · 0 评论 -
Python(十)- tkinter案例(1): WiFi连接器
前段时间,在脉脉上看到一篇关于WiFi连接的python实现,感觉挺有意思的。具体网址忘了,大概思路是利用 tkinter 和 pywifi 这两个库,搭建一个WiFi界面,通过密码文件暴力破解,并不是那种可以通过抓取空中报文,解析用户密码之类的,当然,如果有人有兴趣的话,可以去试一下。1.目标以界面显示程序,提供连接操作;展示附近 WiFi 信号列表,可选择;用户可自定义密码文件;...原创 2020-04-05 19:46:45 · 878 阅读 · 0 评论 -
Python(三)- 交互式编程:jupyter的安装、使用以及出现的部分问题!
如题,本次主要聊聊关于交互式编程在Python中的应用。对于交互式编程,很多人都很熟悉了,其实,很多脚本语言都有这样的功能。可以把它看做程序员和计算机之间的对话,程序员通过解释器或者控制台输入一段命令或逻辑操作,计算机反馈回程序员想要得到的信息。这么一来,就很清楚了,我们平时工作学习中,一直在使用着,如:JavaScript 在浏览器中使用通过控制台和页面交互;Ruby中的irb,...原创 2019-10-01 13:47:14 · 857 阅读 · 0 评论 -
Python(二)- 虚拟环境管理:pyenv、virtualwnv、virtualenvwrapper的安装
很久没玩Python了,为了再次回味和加深一下印象,以这篇博客作为记录!很多人都说Python是一门胶水语言,事实上,它的确很强大!应用于很多领域,注重模块化,因此我们需要一种手段,能够帮助我们去区分和管理不同的模块集合(环境),适应不同需求,同时可以丢掉那些不必要且繁重的依赖(纯净)。虚拟环境管理就是为这个而生的。1. pyenv针对python多版本的管理工具,可以自由切换不同...原创 2019-10-01 00:33:19 · 278 阅读 · 0 评论 -
Python(七)- 连接MongoDB数据库以及CURD操作
本文介绍python中对MongoDB数据库操作的两个模块:pymongo 和 mongoengine一、简介以下内容参考:菜鸟教程MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统,是当前noSql数据库产品中最热门的一种,在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB为WEB应用提供可扩展的高性能数据存储解决方案。MongoD...原创 2019-11-09 15:53:23 · 551 阅读 · 0 评论 -
Web前端(一) - HTML标签常用整理!
如题,本文主要描述博主对之前前端学习中HTML5标签的一些整理。一、基本分类HTML4中,元素被分成两大类: inline(内联元素)与block(块级元素)。1. 块级元素每个块级元素独占一行,可以直接控制宽度、高度以及盒子模型的相关css属性,默认情况下,其宽度为父级元素内容的宽度,默认情况下,其高度为本身内容的高度。常用的块级元素有:标签描述&l...原创 2019-10-06 18:35:17 · 1111 阅读 · 0 评论 -
PHP(六)- 抽象类的继承与MySQL接口CURD操作的实现!
本篇博客移值自博主在PHP中文网上写的原文,这里做个记录1.抽象类继承1.1. 抽象类特点抽象类不能实例化;抽象类中定义的抽象方法必须在子类中实现;如果子类定义了构造函数,父类的构造函数不会被调用,如果需要,构造函数中要写 parent::__construct()。1.2. 演示<?php/** * * @authors Alfred (jusheng_yao@...原创 2019-10-14 23:46:26 · 301 阅读 · 0 评论 -
Python(九)- 音频文字转换
Python 是一门通用性很强的语言,本文主要讲述其中的音频模块 gtts(Google文本到语音)的使用。1.音频模块简介文本转语音:gtts:谷歌模块aip:百度合成格式转换:pydub和ffmpeg:实现mp3转wav格式发音:pyttsx3:系统内置语音引擎实现发音,不生成mp3win32com:Windows操作系统内置的语音引擎实现文字发音音频...原创 2020-04-05 17:42:04 · 15800 阅读 · 0 评论 -
Python(八)- url 代理设置
之前有同事问到关于 Python 中URL走代理的问题,这里做个简单的记录。一、部分思路主要方法有:方法封装、类继承、装饰器、全局代理等。二、具体实现这里简述一下装饰器和全局代理的实现2.1.装饰器2.1.1.简介在不修改被装饰对象的源代码以及调用方式的前提下为被装饰对象添加新功能原则:1.不修改被装饰对象的源代码2.不修改被装饰对象的调用方式目标:为被...原创 2020-04-05 17:35:06 · 1191 阅读 · 0 评论 -
Python(四)- 数据类型及常用的操作!
所有语言的开端都绕不开数据类型,作为面向对象语言,Python之所以深受欢迎,同样离不开其丰富的数据类型一、类型分类数字 Number字符串 String列表 List元组 Tuple字典 Dict/有序字典 OrderedDict集合 Set/固定集合 FrozenSet二、相关操作1. 数字 Numberint:整型float:浮点型bool:布尔型comp...原创 2019-11-03 18:53:51 · 383 阅读 · 0 评论 -
PHP(五)- 类属性与类方法的重载以及回调执行方法!
本篇博客移值自博主在PHP中文网上写的原文,这里做个记录1.属性重载主要使用以下四种魔术方法实现属性重载:__get():读操作,__set():写操作,__isset():判断是否有值,__unset():释放变量演示:<?php/** * * @authors Alfred (jusheng_yao@outlook.com) * @date...原创 2019-10-14 22:35:34 · 338 阅读 · 0 评论 -
PHP(四)- 子类与类成员访问限制符的使用场景!
本篇博客源自博主在PHP中文网上写的原文,移到优快云做个记录1.子类1.1. 简介面向对象语言的三大特点:封装、继承、多态。封装,也就是把客观事物封装成抽象的类,一个类就是一个封装了数据以及操作这些数据的代码的逻辑实体。继承,是指可以让某个类型的对象获得另一个类型的对象的属性的方法,可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展,而通过继承...原创 2019-10-14 21:26:37 · 470 阅读 · 0 评论 -
PHP(三)- 匿名函数、命名空间以及类与对象的学习!
本篇博客来自博主在php中文网上写的一篇,移至优快云作为记录。1.匿名函数1.1.解释:匿名函数也叫闭包函数,即不指定函数名;匿名函数不能直接调用,需要先将匿名函数赋值给一个变量,然后由变量来调用;因为是赋值给一个变量,末尾要加“;”,这也是与普通函数的区别之一。1.2.优点:因为匿名,开发者不需要花费心思,去想一个见名知意又简单名字来表示;只在调用时,临时创建,用完立...原创 2019-10-13 23:36:08 · 385 阅读 · 0 评论 -
PHP(二)- 前后端交互!
html与php混编:如果想让web服务器能自动转发这些请求, 文档的扩展名就不能是.html, 必须是.php遇到一个<?php ?>就转发一个cgi请求, 不管这些标签出现在当前文档的什么地方用户最终看到的,仍然是一个html文档, php代码中的内容不会被泄漏的http请求类型最常用的就是GET和POST二种请求类型1、GET 请求请求参数以键值对的方...原创 2019-10-13 23:12:30 · 250 阅读 · 0 评论 -
PHP(一)- 关于数组的创建和遍历!
PHP数组基本知识1.创建1.1.索引数组<?php// 创建索引数组$movies = ['少年派', '带着爸爸去留学', '亲爱的, 热爱的'];print_r($movies);?>1.2.关联数组<?php $arr = array( 'name1' => '欧阳克', 'age1' => 18, ...原创 2019-10-13 22:54:17 · 385 阅读 · 0 评论 -
Python(一)- 安装与升级!
由于前段时间,博主电脑出了点问题,重装了系统,出于备用考虑,博主装了双系统(win10专业版+deepin),那么,所有环境都要全部重装了。。。许久没用Linux,感觉都有些生疏了,于是决定以博客的形式记录一下。。。那逝去的曾经。。。先从Python开始吧…1.Windows下:去官网:https://www.python.org/ 下载接下来,属于傻瓜操作了,就不多说了,安...原创 2019-09-30 23:16:29 · 31010 阅读 · 5 评论