实际上这是一种误读,read()并不是只能生效一次。之所以会有之生效一次的误解是因为在已经read完所有的字符后,没有重新打开(open)就接着进行了下一次read,此时指针已经移到了字符串末尾,所以不再能读取出任何字符了。'''【思考】:下面的代码会读出什么?'''a=f.read()b=f.read(-1)c=f.read(10)print(a)print(b)print(c)'''乍一看,会读出如下数据:thisisatestforthefuncti
系统 2019-09-27 17:48:35 2429
详解PythonMD5加密Python3下MD5加密#由于MD5模块在python3中被移除#在python3中使用hashlib模块进行md5操作importhashlib#待加密信息str='thisisamd5test.'#创建md5对象hl=hashlib.md5()#Tips#此处必须声明encode#若写法为hl.update(str)报错为:Unicode-objectsmustbeencodedbeforehashinghl.update(
系统 2019-09-27 17:37:44 2429
requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多因为是第三方库,所以使用前需要cmd安装pipinstallrequests安装完成后import一下,正常则说明可以开始使用了。基本用法:requests.get()用于请求目标网站,类型是一个HTTPresponse类型importrequestsresponse=requests.get('http://www.baidu.com')print(response.
系统 2019-09-27 17:56:23 2428
这是一篇机器学习岗位的笔试题,题目大概就是:给定了数据特征和数据标签(二分类),使用机器学习算法对数据进行分类,并优化两个重要的参数,计算AUC指标,画出参数优化和AUC指标变化图。本文选择的是SVM(支持向量机)来实现这一过程,SVM是非常强大、灵活的有监督学习的算法,既可以用于分类,也可以用于回归。实现过程:1.导入需要的包importpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfrommp
系统 2019-09-27 17:56:06 2428
centos安装python3与python2共存网上的教程一搜很多,质量参差不齐,好多都是直接转发的,自己都没试试(导致一个错误的方法传的到处都是,无力吐槽),这里我给出一个我自己安装成功的例子。系统是centos6.8,python是3.6.5。1、安装依赖环境yum-yinstallzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgdbm
系统 2019-09-27 17:55:40 2428
and和or是python的两个逻辑运算符,可以使用and,or来进行多个条件内容的判断。下面通过代码简单说明下andor的用法:1.or:当有一个条件为真时,该条件即为真。逻辑图如下:测试代码如下:a=raw_input('pleaseinputsomting:')ifa=='a'ora=='b':print'itisaorb'else:print'itisnotaorb'执行代码,输入a,b,ac,结果如下:pleaseinputsomting:ait
系统 2019-09-27 17:55:27 2428
ChainMap是Pythoncollections模块中的一个成员,它用来将多个map组合到一起。Chain是链条的意思,字面意思就是把map串联到一起。问题的背景是我们有多个字典或者映射,想把它们合并成为一个单独的映射,有人说可以用update进行合并,这样做的问题就是新建了一个数据结构以致于当我们对原来的字典进行更改的时候不会同步。如果想建立一个同步的查询方法,可以使用ChainMap先看一下初步使用fromcollectionsimportChai
系统 2019-09-27 17:54:00 2428
用python处理一个文本时,想要删除其中中某一行,常规的思路是先把文件读入内存,在内存中修改后再写入源文件。但如果要处理一个很大的文本,比如GB级别的文本时,这种方法不仅需要占用很大内存,而且一次性读入内存时耗费时间,还有可能导致内存溢出。所以,需要用另外一个思路去处理。我们可以使用open()方法把需要修改的文件打开为两个文件,然后逐行读入内存,找到需要删除的行时,用后面的行逐一覆盖。实现方式见以下代码。withopen('file.txt','r')
系统 2019-09-27 17:53:58 2428
学习python以来的第一爬虫,参考《Python3网络爬虫开发实践》爬取目标为:猫眼电影Top100榜完全是依葫芦画瓢,首先请求网页内容,然后在通过正则表达式提取自己感兴趣的数据,最后转成json格式存入文本文件。importjsonimporttimeimportrequestsimportredefget_one_page(url):headers={'User-agent':'Mozilla/5.0(Macintosh;IntelMacOSX10_
系统 2019-09-27 17:50:24 2428
Centons下载安装python3.7之后,运行yum命令出错是因为python2.x版本与python3.x版本之间语法冲突的问题[root@linuxCentos~]#vim/usr/bin/yum#!/usr/bin/python2.7importsystry:importyum网上的办法基本上都是vim打开/usr/bin/yum将第一行#!/usr/bin/python3.x改为原来的#!/usr/bin/python2.x这样改完之后虽然yu
系统 2019-09-27 17:49:08 2428
berrycondaberryconda是一款为树莓派定制基于condapython发行版的开源软件。我们可以使用它来实现类似Miniconda和Anaconda的功能。berryconda提供了python2.7的Berryconda2和python3.6的Berryconda3,同时还支持树莓派0123各个系列,我们可以根据自己的树莓派版本选择适合的版本安装即可。berryconda安装我所只用的是树莓派3B,需要的是Python3的环境,因此我选择了
系统 2019-09-27 17:48:24 2428
一、安装我们知道selenium是桌面浏览器自动化操作工具(WebBrowserAutomation)appium是继承selenium自动化思想旨在使手机app操作也能自动化的工具(MobileAppAutomationMadeAwesome)。appium可以通过DesktopApp和npm两种方式安装。DesktopApp类似于seleniumIDE提供一个图形界面式操作工具;npm类似于selenium就只能使用命令行。如果对appium还不太熟悉
系统 2019-09-27 17:47:42 2428
Python字符串字符串是Python中最常用的数据类型。我们可以使用引号来创建字符串。创建字符串很简单,只要为变量分配一个值即可。例如:var1='HelloWorld!'var2="PythonProgramming"Python访问字符串中的值Python不支持单字符类型,单字符也在Python也是作为一个字符串使用。Python访问子字符串,可以使用方括号来截取字符串,如下实例:#!/usr/bin/pythonvar1='HelloWorld!'
系统 2019-09-27 17:38:17 2428
概述日期和时间的相互转换可以利用Python内置模块time和datetime完成,且有多种方法供我们选择,当然转换时我们可以直接利用当前时间或指定的字符串格式的时间格式。获取当前时间转换我们可以利用内置模块datetime获取当前时间,然后将其转换为对应的时间戳。importdatetimeimporttime#获取当前时间dtime=datetime.datetime.now()un_time=time.mktime(dtime.timetuple()
系统 2019-09-27 17:57:40 2427
这篇文章总结了关于二叉树的创建和各种遍历方式。二叉树的创建方式通过层次遍历顺序创建先序遍历顺序(带上叶子结点标识符)创建先序顺序+中序顺序中序顺序+后序顺序二叉树的递归方式先序遍历(递归+非递归)中序遍历(递归+非递归)后序遍历(递归+非递归)广度优先遍历(BFS)首先来定义一下节点的结构classNode():def__init__(self,val):self.val=valself.left=Noneself.right=None然后定义树类clas
系统 2019-09-27 17:57:12 2427