列表列表是内建的数据结构,用来存储一系列元素。列表与字符串相同点:都支持索引([]运算符)、切片([:])、拼接(+)、重复(*)、成员(in运算符)、长度(len()函数)和循环(for)操作。不同点:列表使用[]生成,元素之间用逗号分离,字符串使用成对引号生成;列表可以包含多种类型的对象,字符串只能是字符;列表的内容是可变的,字符串一旦生成就不可变。列表的可变性可以对列表中的任意元素进行重新赋值,如:lst[0]=‘a’可以通过切片操作对子列表进行赋值
系统 2019-09-27 17:49:26 1871
*args和**kwargs*args代表位置参数,它会接收任意多个参数并把这些参数作为元组传递给函数。**kwargs代表的关键字参数,允许你使用没有事先定义的参数名,另外,位置参数一定要放在关键字参数的前面。__new__和__init__的区别创建一个新实例时调用__new__,初始化一个实例时用__init__,这是它们最本质的区别。new方法会返回所构造的对象,init则不会.new函数必须以cls作为第一个参数,而init则以self作为其第一
系统 2019-09-27 17:48:29 1871
安装可#pipinstallpyautogui#安装importpyautoguipyautogui.click(480,120)#数字为坐标
系统 2019-09-27 17:48:22 1871
0x00:使用xpath进行网页解析#coding:utf-8importrequestsimportosimportrefromlxmlimportetreeimporttimedefget_title(title):#获取标题,创建文件path=r"./Pic/"+titleifos.path.exists(path):#文件夹存在,返回returnpathelse:os.makedirs(path)#创建空文件夹returnpathdefpic_ge
系统 2019-09-27 17:48:15 1871
首先声明,没有什么不良动机,因为经常会用translate.google.cn,就想着用Python模拟网页提交实现文档的批量翻译。据说有API,可是要收费。生成TokenGoogle为防爬虫而生成token的代码是Javascript的,且是根据网站的TKK值和提交的文本动态生成。网上搜到的一段Python代码有点小Bug,且缺少动态获取TKK的步骤。最后还是对照Javascript代码自己改成Python了。方法很简单,先转成易懂的Javascript
系统 2019-09-27 17:47:50 1871
问题定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个0~100之间的随机整数,(1)将它们存储到一维数组中,然后统计成绩低于平均分的学员的人数,并输出出来。(2)将这40个成绩按照从高到低的顺序输出出来。解决(python)#!/usr/binpython#coding:utf-8from__future__importdivision#实现精确的除法,例如4/3=1.333333importrandomdefmake_s
系统 2019-09-27 17:47:43 1871
random()方法返回一个随机浮点数r,使得0是小于或等于r以及r小于1。语法以下是random()方法的语法:random()注意:此函数是无法直接访问的,所以我们需要导入random模块,然后我们需要使用random对象来调用这个函数。参数NA返回值此方法返回一个随机浮点数r,使得0是小于或等于r以及r小于1。例子下面的例子显示了random()方法的使用。#!/usr/bin/pythonimportrandom#Firstrandomnumber
系统 2019-09-27 17:47:35 1871
在python中可以使用in符号判断指定的元素是否存在于列表中,但我发现元组和数组存在区别,下面是详细实验结果。>>>'jb51.net'in['haotu.net','jb51.net']True>>>'jb51.net'in('haotu.net','jb51.net')True>>>'jb51.net'in['jb51.net/codes','haotu.net']False>>>'jb51.net'in('jb51.net/codes','haot
系统 2019-09-27 17:47:15 1871
首先还是应该科普下函数参数传递机制,传值和传引用是什么意思?函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题。基本的参数传递机制有两种:值传递和引用传递。值传递(passl-by-value)过程中,被调函数的形式参数作为被调函数的局部变量处理,即在堆栈中开辟了内存空间以存放由主调函数放进来的实参的值,从而成为了实参的一个副本。值传递的特点是被调函数对形式参数的任何操作都是作为局部变量进行,不会影响主调函数的
系统 2019-09-27 17:47:11 1871
mktime()方法是localtime()反函数。它的参数是struct_time或全9元组,它返回一个浮点数,为了兼容时time()。如果输入值不能表示为有效的时间,那么OverflowError或ValueError错误将被引发。Syntax以下是mktime()方法的语法:time.mktime(t)参数t--这是struct_time或满9元组。返回值此方法返回一个浮点数,对于兼容性time()。例子下面的例子显示了mktime()方法的使用。#
系统 2019-09-27 17:46:39 1871
文|yangrq1018经常在腾讯视频上看电影,在影片库里有一个"豆瓣好评"板块。我一般会在这个条目下面挑电影。但是电影很多,又缺乏索引,只能不停地往下来,让js加载更多的条目。然而前面的看完了,每次找新的片就要拉很久。所以用爬虫将"豆瓣好评"里的电影都爬下来整理到一个表中,方便选片。项目地址:https://github.com/yangrq1018/vqq-douban-film依赖需要如下Python包:requestsbs4-Beautifulso
系统 2019-09-27 17:46:04 1871
这次只演示了,如何在真实项目内用到BeautifulSoup库来解析网页,而新浪的新闻是ajax加载过来的数据,在这里我们只演示解析部分数据(具体反扒机制没做分析)。代码地址:https://gitee.com/dwyui/BeautifulSoup_xinlang.git。关于的爬虫的博客已经越来越多,使用到的技术也越来越多,后期我还会持续写下去,大概从几个角度去写,多线程爬取(提高效率),如何更好的做到爬取数据(破解反扒)。用redis管理多线程和代理
系统 2019-09-27 17:45:54 1871
在介绍yield前有必要先说明下Python中的迭代器(iterator)和生成器(constructor)。一、迭代器(iterator)在Python中,for循环可以用于Python中的任何类型,包括列表、元祖等等,实际上,for循环可用于任何“可迭代对象”,这其实就是迭代器迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前进到下一结果,而在一系列结果的末尾是,则会引发StopIteration。任何这类的对象
系统 2019-09-27 17:38:45 1871
Python列表List(列表)是Python中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。列表用[]标识。是python最通用的复合数据类型。看这段代码就明白。列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。加号(+)是列表连接运算符,星号(*)是重复操作。如下实例:#!/usr/
系统 2019-09-27 17:38:44 1871
如果某类里没有__init__方法函数,通过类名字创建的实例对象为空,切没有初始化;如果有此方法函数,通常作为类的第一个方法函数,有点像C++等语言里的构造函数。classCa:def__init__(self,v):#注意前后各两个下划线self.name=vdefpr(self):print"a--->",self.nameia=Ca("Jeapedu")#本质调用的是__init__方法函数ia.pr()Ca.pr(ia)输出结果a--->Jeape
系统 2019-09-27 17:38:41 1871