- 军军小站|张军博客
搜索到与相关的文章
Python

[Python实战]使用栈实现简易计算器

我们这次实现的命令行计算器,支持加减乘除、括号、浮点数、负数,以及查看历史和退出功能。主要的思路:read-parse-print-loop。read阶段是指读取用户在提示符(cal>)之后输入的字符串。parse阶段包括:将用户输入的字符串分割成单个对象比如:符号+,或者数字1.2。其次将中缀表达式转化后缀表达式,接下来计算后缀表达式的数值。print阶段指的是将parse阶段的数值打印在终端上。loop阶段是指重复上述操作,除非用户输入exit符号或者

系统 2019-09-27 17:45:27 1804

Python

Phantomjs抓取渲染JS后的网页(Python代码)

最近需要爬取某网站,无奈页面都是JS渲染后生成的,普通的爬虫框架搞不定,于是想到用Phantomjs搭一个代理。Python调用Phantomjs貌似没有现成的第三方库(如果有,请告知小编),漫步了一圈,发现只有pyspider提供了现成的方案。简单试用了一下,感觉pyspider更像一个为新手打造的爬虫工具,好比一个老妈子,有时无微不至,有时喋喋不休。轻巧的小工具应该更受人喜爱,我也怀着一点私心,可以带着我最爱的BeautifulSoup一块儿用,而不用

系统 2019-09-27 17:38:44 1804

Python

深入理解python函数递归和生成器

一、什么是递归如果函数包含了对其自身的调用,该函数就是递归的。递归做为一种算法在程序设计语言中广泛应用,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。例如,要计算1-9的9位数字的乘积,直观的算法是1*2*3*4*5*6*7*8*9,如果要计算1-10000的乘积,直观的算法就难于实现出,而递归就可以很简单的实现。请看示例:deffact(

系统 2019-09-27 17:38:31 1804

Python

Python读大数据txt

如果直接对大文件对象调用read()方法,会导致不可预测的内存占用。好的方法是利用固定长度的缓冲区来不断读取文件内容。即通过yield。在用Python读一个两个多G的txt文本时,天真的直接用readlines方法,结果一运行内存就崩了。还好同事点拨了下,用yield方法,测试了下果然毫无压力。咎其原因,原来是readlines是把文本内容全部放于内存中,而yield则是类似于生成器。代码如下:defopen_txt(file_name):withope

系统 2019-09-27 17:38:24 1804

Python

python连接mysql实例分享

示例一#coding=UTF-8importsysimportMySQLdbimporttimereload(sys)sys.setdefaultencoding('utf-8')defconnectDemo():returnMySQLdb.Connection("127.0.0.1","root","root","demo",3306,charset="utf8")if__name__=='__main__':begin=time.time()conn=

系统 2019-09-27 17:37:59 1804

Python

Python数据库的连接实现方法与注意事项

在Python中要连接数据库,首先我们得先安装几个重要的东西,主要有:(1)Python-dev包(2)setuptools-0.6c11.tar.gz(3)MySQL-python-1.2.3.tar.gz下面分别来说说这三个主要的包的安装步骤:(1)Python-dev包直接yuminstallpython-devel(2)setuptools-0.6c11.tar.gz在网上下载后,先解压:tarzxfsetuptools-0.6c11.tar.gz

系统 2019-09-27 17:37:55 1804

Python

Python 性能优化技巧总结

1.使用测量工具,量化性能才能改进性能,常用的timeit和memory_profiler,此外还有profile、cProfile、hotshot等,memory_profiler用了psutil,所以不能跟踪cpython的扩展;2.用C来解决费时的处理,c是效率的代名词,也是python用来解决效率问题的主要途径,甚至有时候我都觉得python是c的完美搭档。常用的是Cython,直接把py代码c化然后又能像使用py包一样使用,其次是ctypes,效

系统 2019-09-27 17:37:43 1804

Python

Python构造函数及解构函数介绍

python有一个相应的特殊解构器(destructor)方法名为__del__()。然而,由于python具有垃圾对象回收机制(靠引用计数),这个函数要直到该实例对象所有的引用都被清除掉后才会被执行。python中的解构器是在实例释放前提供特殊处理功能方法,它们通常没有被实现,因为实例很少被显式释放。在下面的例子中,我们分别创建(并覆盖)__init__()和__del__()构造器及解构函数,然后,初始化类并给同样的对象很多别名。id()内建函数可用来

系统 2019-09-27 17:37:40 1804

编程技术

Google AJAX Search API+TAG=美味的站点

前言del.icio.us提供了多种可重用的数据格式。而它提供了通用API访问和类似PHP的输出格式,使这些数据也可以被JavaScript开发者将其作为JSON格式所使用。GoogleAJAXSearchAPI提供一些简单的web对象:它们执行建立在各种Google服务(页面搜索、本地搜索、视频搜索、Blog搜索、新闻搜索)之上的内嵌(inline)搜索。如何把这两项技术结合在一起呢?GoogleAJAXSearchAPI+TAG=美味的站点?什么是Go

系统 2019-08-29 23:51:20 1804

编程技术

如何创建ADF Application Module 使用的JNDI数

ADF应用通常部署在Weblogic中,本文介绍如何在Weblogic中创建JDNI数据源,并将该数据源提供给ADF应用中的AM使用。1,在AM中,ConnectionType选择JDBCDataSource,输入自定义的DatasourceName2,启动Weblogic服务器,在主页中选择JDBC->数据源->新建数据源名称任意,JNDI名称需要跟AM中的DatasourceName保持一致。3,下一步,数据库驱动一般选择下图的选项:4,下一步,信息默

系统 2019-08-29 23:33:04 1804