Python - 军军小站|张军博客
Python

仅用50行代码实现一个Python编写的计算器的教程

简介在这篇文章中,我将向大家演示怎样向一个通用计算器一样解析并计算一个四则运算表达式。当我们结束的时候,我们将得到一个可以处理诸如1+2*-(-3+2)/5.6+3样式的表达式的计算器了。当然,你也可以将它拓展的更为强大。我本意是想提供一个简单有趣的课程来讲解语法分析和正规语法(编译原理内容)。同时,介绍一下PlyPlus,这是一个我断断续续改进了好几年的语法解析接口。作为这个课程的附加产物,我们最后会得到完全可替代eval()的一个安全的四则运算器。如果

系统 2019-09-27 17:49:09 1774

Python

把项目从Python2.x移植到Python3.x的经验总结

经历移植jinja2到python3的痛苦之后,我把项目暂时放一放,因为我怕打破python3的兼容。我的做法是只用一个python2的代码库,然后在安装的时候用2to3工具翻译成python3。不幸的是哪怕一点点的改动都会打破迭代开发。如果你选对了python的版本,你可以专心做事,幸运的避免了这个问题。来自MoinMoin项目的ThomasWaldmann通过我的python-modernize跑jinja2,并且统一了代码库,能同时跑python2,

系统 2019-09-27 17:49:06 1774

Python

python+numpy实现的基本矩阵操作示例

本文实例讲述了python+numpy实现的基本矩阵操作。分享给大家供大家参考,具体如下:#!usr/bin/envpython#coding:utf-8#学习numpy中矩阵的代码笔记#2018年05月29日15:43:40#参考网站:http://cs231n.github.io/python-numpy-tutorial/importnumpyasnp#==================矩阵的创建,增删查改,索引,运算===============

系统 2019-09-27 17:49:00 1774

Python

python批量修改ssh密码的实现

由于工作需要本文主结合了excel表格,对表格中的ssh密码进行批量修改以下是详细代码(python3):'''遇到问题没人解答?小编创建了一个Python学习交流QQ群:857662006寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!'''#!/usr/bin/envpython#-*-coding:utf-8-*-importparamikoimportsocketimportpandasaspddefdemo(Ip,us

系统 2019-09-27 17:48:19 1774

Python

python中sort和sorted排序的实例方法

Pythonlist内置sort()方法用来排序,也可以用python内置的全局sorted()方法来对可迭代的序列排序生成新的序列。1)排序基础简单的升序排序是非常容易的。只需要调用sorted()方法。它返回一个新的list,新的list的元素基于小于运算符(__lt__)来排序。>>>sorted([5,2,3,1,4])[1,2,3,4,5]你也可以使用list.sort()方法来排序,此时list本身将被修改。通常此方法不如sorted()方便,

系统 2019-09-27 17:47:37 1774

Python

python使用正则搜索字符串或文件中的浮点数代码实例

用python和numpy处理数据次数比较多,写了几个小函数,可以方便地读写数据:#-*-coding:utf-8-*-#----------------------------------------------------------------------#FileName:gettxtdata.py#功能:读取字符串和文件中的数值数据(浮点数)#主要提供类似matlab中的dlmread和dlmwrite函数#同时提供loadtxtdata和sav

系统 2019-09-27 17:47:34 1774

Python

Python进行快速排序

博主之前写过各种排序方法的详细分析,于是在这个地方直接放上示例代码示例代码如下:#encoding:utf-8defquick_sort(lists,left,right):#快速排序ifleft>=right:returnlistskey=lists[left]low=lefthigh=rightwhileleft

系统 2019-09-27 17:47:30 1774

Python

python使用 zip 同时迭代多个序列示例

本文实例讲述了python使用zip同时迭代多个序列。分享给大家供大家参考,具体如下:zip可以平行地遍历多个迭代器python3中zip相当于生成器,遍历过程中产生元祖,python2会把元祖生成好,一次性返回整份列表zip(x,y,z)会生成一个可返回元组(x,y,z)的迭代器>>>x=[1,2,3,4,5]>>>y=['a','b','c','d','e']>>>z=['a1','b2','c3','d4','e5']>>>foriinzip(x,y

系统 2019-09-27 17:47:13 1774

Python

Python内置random模块生成随机数的方法

本文我们详细地介绍下两个模块关于生成随机序列的其他使用方法。随机数参与的应用场景大家一定不会陌生,比如密码加盐时会在原密码上关联一串随机数,蒙特卡洛算法会通过随机数采样等等。Python内置的random模块提供了生成随机数的方法,使用这些方法时需要导入random模块。importrandom下面介绍下Python内置的random模块的几种生成随机数的方法。1、random.random()随机生成0到1之间的浮点数[0.0,1.0)。注意的是返回的随

系统 2019-09-27 17:46:55 1774

Python

Python ValueError: invalid literal

今天在写爬虫程序的时候由于要翻页,做除法分页的时候出现了复制代码代码如下:totalCount='100'totalPage=int(totalCount)/20ValueError:invalidliteralforint()withbase10的错误网上同样的错误有人建议用round(float(“1.0″)),但是解决不了我这个问题,round(float(“1.0″))是用于解决浮点数转换为整形数的,而我这个则是因为原字符串转换为整形后做除法,虽然

系统 2019-09-27 17:45:38 1774

Python

python 调用HBase的简单实例

新来的一个工程师不懂HBase,java不熟,python还行,我建议他那可以考虑用HBase的thrift调用,完成目前的工作。首先,安装thrift下载thrift,这里,我用的是thrift-0.7.0-dev.tar.gz这个版本tarxzfthrift-0.7.0-dev.tar.gzcdthrift-0.7.0-devsudo./configure--with-cpp=no--with-ruby=nosudomakesudomakeinstal

系统 2019-09-27 17:45:33 1774

Python

Python socket网络编程TCP/IP服务器与客户端通信

Pythonsocket网络编程初学python,前段时间买了两本书《python编程从入门到实践》《Python核心编程第三版》,第一本书主要讲的是一些基本语法和一些基本的使用方法,而第二本则深入很多,自己看来也是一知半解,刚好看到了这部分网络编程,依然有好多不太理解的地方,不过想来通过自己不断的摸索,不断地搜寻资料学习,早晚应该会变得通透吧.......这部分主要使用的模块就是socket模块,在这个模块中可以找到socket()函数,该函数用于创建套

系统 2019-09-27 17:38:34 1774

Python

12步教你理解Python装饰器

通过下面的步骤让你由浅入深明白装饰器是什么。假定你拥有最基本的Python知识,本文阐述的东西可能对那些在工作中经常接触Python的人有很大的帮助。1、函数(Functions)在Python里,函数是用def关键字后跟一个函数名称和一个可选的参数表列来创建的,可以用关键字return指定返回值。下面让我们创建和调用一个最简单的函数:>>>deffoo():...return1>>>foo()1该函数的函数体(在Python里将就是多行语句)是强制性的并

系统 2019-09-27 17:38:30 1774

Python

Python 爬虫的工具列表大全

网络通用urllib-网络库(stdlib)。requests-网络库。grab�C网络库(基于pycurl)。pycurl�C网络库(绑定libcurl)。urllib3�CPythonHTTP库,安全连接池、支持文件post、可用性高。httplib2�C网络库。RoboBrowser�C一个简单的、极具Python风格的Python库,无需独立的浏览器即可浏览网页。MechanicalSoup-一个与网站自动交互Python库。mechanize-有

系统 2019-09-27 17:38:25 1774

Python

python服务器端收发请求的实现代码

最近学习了python的一些服务器端编程,记录在此。发送get/post请求#coding:utf-8importhttplib,urllib#加载模块#urllib可以打开网站去拿#res=urllib.urlopen('http://baidu.com');#printres.headers#定义需要进行发送的数据params=urllib.urlencode({'param':'6'});#定义一些文件头headers={"Content-Type"

系统 2019-09-27 17:38:17 1774