编程技术 - 军军小站|张军博客
Python

Python 之父的解析器系列之六:给 PEG 语法添加动作

“Python猫”,一个值得加星标的公众号花下猫语:Guido的解析器系列更新了7篇,他的生产力真旺盛啊。这对于新的解析器来说是件好事,但对于我来说却是个不小的挑战:需要一定的时间和精力,而我对解析器的知识极为欠缺,也造成了翻译过程的不顺畅。现在,我把译文提到Github上了(guido_blog_translation),希望有热心肠的同学能来帮忙审阅指正,或者认领翻译任务吧。最后,提前祝大家中秋节快乐,阖家团圆,诸事和美。原题|AddingAction

系统 2019-09-27 17:45:56 2023

Python

用Python解决计数原理问题的方法

前几天遇到这样一道数学题:用四种不同颜色给三棱柱六个顶点涂色,要求每个点涂一种颜色,且每条棱的两个端点涂不同颜色,则不同的涂色方法有多少种?当我看完题目后,顿时不知所措。于是我拿起草稿纸在一旁漫无目的地演算了一下,企图能找到解决方法。结果一无所获。于是打算通过程序算法解决这个问题。经过2个多小时的研究,终于完成了代码,并求得了答案。由于Python写起来比较方便而且本人比较喜欢Python的语法,所以研究算法时我通常采用Python,此次也不例外。以下就是

系统 2019-09-27 17:37:46 2023

Python

Python基础教程学习笔记 第二章 列表和元组

1、序列中元素的索引:第一个元素索引是0,第二个是1,依次递增最后一个元素索引是-1,倒数第二个是-2,依次递减2、序列(Sequence)的种类:列表(list)、元组(tuple)、字符串(string)、Unicode字符串、buffer对象、xrange对象3、列表和元组的区别:列表可以进行修改,但是元组不行4、tuple常作为字典的键5、序列都可以进行以下操作:索引(indexing)、分片(sliceing)、加(adding)、乘(multi

系统 2019-09-27 17:37:36 2023

编程技术

AJAX 非宣传性简介

作者:ChrisSchalkAJAX核心基础技术的真实概述。2006年4月发布迄今为止,您可能已经听过太多有关AJAX的宣传报道,而且很多产品都宣称它们支持或“兼容”AJAX。但是,很多人可能一直无法从技术角度对AJAX的实质进行简单、严谨的阐释。本文将摈弃所有华丽词藻,从平实的角度对构成AJAX的核心基础进行概述。首先,AJAX是个新事物吗?并非如此。远程Javascript在最近掀起了一轮热潮。利用它,开发人员能够使用XML数据与服务器交互。而AJAX

系统 2019-08-29 23:51:42 2023

编程技术

诸葛烤鱼

晚餐是在一家叫做“诸葛烤鱼”的连锁店里边吃的,由于同事不能吃太辣的东西,所以要的是葱香口味的,一条鲤鱼花了46块,有点贵哦。星期日也没有休息的很好,中午的时候提供了第1版的解决方案,但是对方发现了一些问题,需要我们进一步的修订,刚开始的时候确实有点不情愿,觉得有点多此一举,但是仔细分析之后发现的确是存在问题。用了过多的术语,对方很不理解。一些流程认为客户已经理解了,因此没有详细阐述,给客户造成了误导。部分流程没有详细设计,因此造成了一些细节的不完善。呵呵,

系统 2019-08-29 23:48:28 2023

编程技术

最后的驿站-西安热工院

回归自然,做回本行业!无疑,最后的驿站着眼于家庭!感谢热工院给我提供了这个机会!西安热工研究院有限公司(一般称“西安热工研究院”,简称“西安热工院”,英文缩写“TPRI”),是我国电力行业国家级热能动力科学技术研究与热力发电技术开发的机构。主要专业于1951年在北京创建,1965年迁址西安成立西安热工研究所;先后隶属燃料工业部、电力工业部、水利电力部、能源部、国家电力公司,其间随国家电力体制改革依次更名为电力工业部热工研究院(1994年)、国家电力公司热工

系统 2019-08-29 23:13:54 2023

编程技术

Web安全innovation

本文原作者是趋势的一个朋友,在征得他同意的基础上,拿来转载Web安全innovation由于最近参加了病毒和WebThreat的基础培训,对一些常规的恶意软件或者网页的原理和行为有了粗浅的认识。经过这次培训,心里有个想法就是:恶意软件和网页的作者是进攻者,安全厂商是被动防护者,而且一暗一明,攻守之势一直没有太大的改变,结果就是无尽的病毒,无穷的pattern,“无力”的防御。张总有言:策略是致胜的关键。我觉得我们安全厂商是不是应该在策略上作出些根本的改变呢

系统 2019-08-29 22:53:24 2023

编程技术

使用缓存构建更快的 Web 应用程序

使用Java™技术的Web开发人员可以使用缓存实用程序快速提升他们的应用程序的性能。Java缓存系统(JavaCachingSystem,JCS)是一个用于Java应用程序的强大分布式缓存系统,它是拥有简单API的高度可配置的工具。本文将概述JCS并展示如何使用它来提高Web应用程序的速度。

编程技术

EasyMock 使用方法与原理剖析

Mock方法是单元测试中常见的一种技术,它的主要作用是模拟一些在应用中不容易构造或者比较复杂的对象,从而把测试与测试边界以外的对象隔离开。编写自定义的Mock对象需要额外的编码工作,同时也可能引入错误。EasyMock提供了根据指定接口动态构建Mock对象的方法,避免了手工编写Mock对象。本文将向您展示如何使用EasyMock进行单元测试,并对EasyMock的原理进行分析。1.Mock对象与EasyMock简介单元测试与Mock方法单元测试是对应用中的

系统 2019-08-29 22:42:49 2023

编程技术

程序员的7大坏习惯

0.所有的代码都是垃圾,除了我的以外哥们儿,我有一个坏消息要告诉你,你的代码很垃圾。不管你花费了多少精力,总是有很多程序员认为你的代码是垃圾,他们可以比你做的10倍更好。怎么解决:不要只顾着批评,你也是写代码的人。尝试去客观的评价,而不是审判!谦虚一点。1.“马上搞定”带来的灾难大家都喜欢走捷径,每个人都做过。有时候走捷径是必须的,但是大部分情况下走捷径是危险的,非常危险,所以我们应该尽量避免。一个捷径可能省了你几个小时的时间,但是可能为你带来几个月的痛苦

系统 2019-08-29 22:01:02 2023

编程技术

Anychart图表系列九之Dashboard

Dashboard中文释义为仪表盘、控制台,这个用词很生动,它指的是多个图组合在一起的效果,就像模具工作中的操作台一样由多种图形仪器组成。在项目中,特别是高管平台,领导看重的是多套数据的汇总,所以dashboard更为重要,下例是一个典型的dashboard,后面就从它入手,介绍dashboard的使用。第一步,创建,要创建多图整合,就必须在XML中定义标签,他位置根标签之后,与

系统 2019-08-12 09:30:29 2023

编程技术

XFire完整入门教程

网上关于XFire入门的教程不少,要么是讲得很简单,就像HelloWorld一样的程序,要么就是通过IDE集成的工具来开发的,这对于不同的人群有诸多不便,关于XFire的一些详细的信息就不再多讲,可以参考官方网站和相关的文档,这里讲一个完整的入门实例。实例中包括三个情况,我想基本上可以概括所有的需求,或者自己稍加扩展即可。先来看看我们的Interface。1packagetest;23importjava.util.List;45publicinterfa

系统 2019-08-12 09:30:24 2023

编程技术

js 删除数组几种方法

vararr=['a','b','c'];若要删除其中的'b',有两种方法:1.delete方法:deletearr[1]这种方式数组长度不变,此时arr[1]变为undefined了,但是也有好处原来数组的索引也保持不变,此时要遍历数组元素可以才用for(indexinarr){document.write('arr['+index+']='+arr[index]);}这种遍历方式跳过其中undefined的元素*该方式IE4.o以后都支持了2.数组对象

系统 2019-08-12 09:30:04 2023

编程技术

js中的constructor 和prototype深入分析

在javascript的使用过程中,constructor和prototype这两个概念是相当重要的,深入的理解这两个概念对理解js的一些核心概念非常的重要。我们在定义函数的时候,函数定义的时候函数本身就会默认有一个prototype的属性,而我们如果用new运算符来生成一个对象的时候就没有prototype属性。我们来看一个例子,来说明这个functiona(c){this.b=c;this.d=function(){alert(this.b);}}va

系统 2019-08-12 09:29:41 2023