Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
这篇文章主要介绍了Pythont特殊语法filter,map,reduce,apply使用方法,需要的朋友可以参考下
(1)lambda
lambda是Python中一个很有用的语法,它允许你快速定义单行最小函数。类似于C语言中的宏,可以用在任何需要函数的地方。
基本语法如下:
函数名 = lambda args1,args2,…,argsn : expression
例如:
add = lambda x,y : x + y
print add(1,2)
(2)filter
filter函数相当于一个过滤器,函数原型为:filter(function,sequence),表示对sequence序列中的每一个元素依次执行function,这里function是一个bool函数,举例说明:
sequence = [1,2,3,4,5,6,7,8,9,10]
fun = lambda x : x % 2 == 0
seq = filter(fun,sequence)
print seq
以下代码就是表示筛选出sequence中的所有偶数。
filter函数原型大致如下:
def filter(fun,seq):
filter_seq = []
for item in seq:
if fun(item):
filter_seq.append(item)
return filter_seq
(3)map
map的基本形式为:map(function,sequence),是将function这个函数作用于sequence序列,然后返回一个最终结果序列。比如:
seq = [1,2,3,4,5,6]
fun = lambda x : x << 2
print map(fun,seq)
map的函数源代码大致如下:
def map(fun,seq):
mapped_seq = []
for item in seq:
mapped_seq.append(fun(item))
return mapped_seq
(4)reduce
reduce函数的形式为:reduce(function,sequence,initVal),function表示一个二元函数,sequence表示要处理的序列,而initVal表示处理的初始值。比如:
seq = [1,2,3,4,5,6,7,8,9,10]
fun = lambda x,y: x + y
print reduce(fun,seq,0)
表示从初始值0开始对序列seq中的每一个元素累加,所以得到结果是55
reduce函数的源代码大致如下:
def reduce(fun,seq,initVal = None):
Lseq = list(seq)
if initVal is None:
res = Lseq.pop(0)
else:
res = initVal
for item in Lseq:
res = fun(seq,item)
return res
(5)apply
apply是用来间接地代替某个函数,比如:
def say(a,b):
print a,b
apply(say,(234,'Hello World!'))
推荐我们的python学习基地,看前辈们是如何学习的!从基础的python脚本、爬虫、django、数据挖掘等编程技术,还有整理零基础到项目实战的资料,送给每一位爱学习python的小伙伴!每天都有老前辈定时讲解Python技术,分享一些学习的方法和需要留意的小细节。进裙共同学习,坚持打卡裙号624440745———————————————624440745
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释的更多相关文章
- 使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解(新手必学)
为大家介绍下Python爬虫库BeautifulSoup遍历文档树并对标签进行操作的详细方法与函数下面就是使用Python爬虫库BeautifulSoup对文档树进行遍历并对标签进行操作的实例,都是最 ...
- 【Python爬虫】BeautifulSoup网页解析库
BeautifulSoup 网页解析库 阅读目录 初识Beautiful Soup Beautiful Soup库的4种解析器 Beautiful Soup类的基本元素 基本使用 标签选择器 节点操作 ...
- Python爬虫之BeautifulSoup库
1. BeautifulSoup 1.1 解析库 1)Python标准库 # 使用方法 BeautifulSoup(markup, "html.parser") # 优势 Pyth ...
- Python爬虫之Beautifulsoup模块的使用
一 Beautifulsoup模块介绍 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Be ...
- Python爬虫系列-BeautifulSoup详解
安装 pip3 install beautifulsoup4 解析库 解析器 使用方法 优势 劣势 Python标准库 BeautifulSoup(markup,'html,parser') Pyth ...
- python 爬虫库安装
一键安装python爬虫库 pip3 install requests selenium beautifulsoup4 pyquery pymysql pymongo redis flask djan ...
- js-取值&赋值-获取某标签某属性的值
js 取值&赋值-获取某标签某属性的值 CreateTime--2016年10月16日16:35:34 Author:Marydon 1.取值 //方法一 //自定义属性必须用getAtt ...
- NX二次开发-UFUN获取对象的显示属性(图层,颜色,空白状态,线宽,字体,高亮状态)UF_OBJ_ask_display_properties
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize( ...
- Python爬虫库-Beautiful Soup的使用
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库,简单来说,它能将HTML的标签文件解析成树形结构,然后方便地获取到指定标签的对应属性. 如在上一篇文章通过爬虫 ...
随机推荐
- 迭代器中set的使用
今天对迭代器中的set方法进行了一下简单的使用,由于之前使用过list方法,所以将他与list进行了一下对比. list中加入对象时不会进行查重,也就是只要是一个符合的对象就可以加到list中,而对于 ...
- C语言I作业1
1 你对软件工程专业或计算机科学与技术专业了解是怎样的? 软件工程顾名思义就是工程化的方法生产软件的一门学科.涉及到程序设计语言,数据库,软件开发工具,系统平台,标准,设计模式等方面. 2 你了解c语 ...
- webpack入门系列1
一.什么是webpack?为什么要使用它? Webpack 是一个前端资源加载/打包工具.它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源. 为什么我们要使用它呢?因 ...
- Luinx安装RocketMQ
一.RocketMQ环境 准备两台虚拟机,分别为master01 和master02 二.安装JDK(两台虚拟机相同步骤) 1. 检查当前虚拟机环境有没有JDK rpm -qa|grep java ( ...
- 关于C++ 中 thread 的拷贝构造函数
起因来自于<C++并发编程实战>的这样一个例子 #include <thread> #include <iostream> #include <stdexce ...
- Java框架之SpringSecurity-权限系统
SpringSecurity SpringSecurity融合Spring技术栈,提供JavaEE应用的整体安全解决方案:提供全面的安全服务.Spring Security支持广泛的认证模型 模块划分 ...
- NR / 5G - W-OFDM
- Maven项目pom文件的节点释意
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- 卫星轨道相关笔记SGP4
由卫星历书确定卫星轨道状态向量 卫星历书的表示方法有2种: TLE(Two Line Element),和轨道根数表示方法 由卫星历书计算出卫星轨道状态向量的方法有2种: SGP方法,NORAD的方法 ...
- 如何用Python实现do...while语句
我在编程的时候可能会遇到如下代码: a = 0 while a != 0: a = input() print a 我所设想的运行过程是这样的: 很显然我是想先运行后判断的模式,即 do...whil ...