Python爬虫笔记——def()自定义函数的几种参数

本文详细介绍了Python中自定义函数的六种定义方式,包括lambda匿名函数、标准自定义函数、无参数函数、带默认值的函数、参数个数不确定的函数以及关键字参数函数,并通过实例展示了每种函数的使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python自定义函数是以def开头,空一格之后是这个自定义函数的名称,名称后面是一对括号,括号里放置形参列表,结束括号后面一定要有冒号“:”,函数的执行体程序代码也要有适当的缩排。Python自定义函数的通用语法是:

def function_name(parameters):
    function_expression
    return(result)

1、使用lambda匿名函数的自定义函数:

Python提供了一种非常有趣、精简好用的一行自定义函数的方法lambda,这是一种可以实现一行语句、用完即丢的自定义函数。语法形式是:
lambda 参数列表:执行语句
其实,它对应的标准自定义函数形式:
def 函数名称(参数列表):
return 语句内容
这种定义方式可以和map函数一起使用。

>>> x = range(1,9)
>>> x
range(1, 9)
>>> y = map(lambda i: i**3, x)
>>> for i, value in enumerate(y):
	print("{}^3 = {}".format(i,value))
 
	
0^3 = 1
1^3 = 8
2^3 = 27
3^3 = 64
4^3 = 125
5^3 = 216
6^3 = 343
7^3 = 512

2、标准自定义函数:

形参列表是标准的tuple数据类型

def abvedu_add(x,y):
	print( x + y)

abvedu_add(3,6)
>>> 
9

3、没有形参的自定义函数:

该形式是标准自定义函数的特例。

def abvedu_print():
	print("hello Python!")

abvedu_print() 
>>> 
hello Python!

4、使用默认值的自定义函数:

在定义函数指定参数时,有时候会有一些默认的值,可以利用“=”先指定在参数列表上,如果在调用的时候没有设置此参数,那么该参数就使用默认的值。

def abvedu_printSymbol(n,symbol = " %"):
	for i in range(1,n+1):
		print(symbol , end ="")
	print()

abvedu_printSymbol(6) 
abvedu_printSymbol(9,"@")
>>> 
 % % % % % %
@@@@@@@@@

5、参数个数不确定的自定义函数:

此函数可以接受没有预先设置的参数个数,定义方法是在参数的前面加上“*”。

def abvedu_main(*args):
	print("参数分别是:")
	for arg in args:
		print(arg)
 	
abvedu_main(1,2,3)
>>>
参数分别是:
1
2
3
abvedu_main(6,9)
>>> 
参数分别是:
6
9
abvedu_main('a','b','v','e',"du")
>>>
参数分别是:
a
b
v
e
du

6、关键字参数

此函数可以接受没有预先设置的参数个数,又可以把多个实参数指定给各自的实参名。就得用关键字参数,定义方法是在参数的前面加上两个“*”,即 “ ** ”。

def info_collection(tel,birthday,**kwargs):
    user_info = {}
    user_info['tel'] = tel
    user_info['birthday'] = birthday
    user_info.update(kwargs)
    print(kwargs)
    print(user_info)
    #用户信息返回
    return(user_info)
#调用函数
info_collection(13612345678,'1990-01-01',nickname='月亮',gender = '女',edu = '硕士',income = 15000,add = '上海市浦东新区',interest = ['游戏','唱歌','看电影'])

>>>
{'nickname': '月亮', 'gender': '女', 'edu': '硕士', 'income': 15000, 'add': '上海市浦东新区', 'interest': ['游戏', '唱歌', '看电影']}
{'tel': 13612345678, 'birthday': '1990-01-01', 'nickname': '月亮', 'gender': '女', 'edu': '硕士', 'income': 15000, 'add': '上海市浦东新区', 'interest': ['游戏', '唱歌', '看电影']}
### Python 爬虫学习笔记 #### 获取数据地址信息 了解并掌握网址结构对于编写有效的爬虫程序至关重要。URL(统一资源定位符)用于指定网络上资源的位置,这是启动任何爬虫项目的起点[^1]。 ```python import urllib.parse def parse_url(url_string): result = urllib.parse.urlparse(url_string) print(f'Scheme: {result.scheme}') print(f'Netloc (Domain): {result.netloc}') print(f'Path: {result.path}') # 示例调用函数解析 URL parse_url('https://www.example.com/path/to/resource?query=string') ``` #### 安装 `requests` 库 为了简化HTTP请求处理过程,在Python环境中安装第三方库`requests`是非常推荐的做法。这可以通过不同的方式完成取决于操作系统环境: - Windows 用户可以在命令提示符中执行 `pip install requests` - Linux 用户可能需要管理员权限,因此应使用 `sudo pip install requests` 命令[^2] #### 发起 HTTP 请求 一旦安装好必要的工具包,就可以利用这些工具向目标网站发送GET/POST等类型的HTTP请求,并接收服务器返回的数据流作为响应对象。 ```python import requests response = requests.get('http://example.com') if response.status_code == 200: content = response.text else: raise Exception("Failed to load page {}".format(response.status_code)) ``` #### 数据解析技术 当接收到HTML文档或其他形式的内容后,下一步就是从中提取有用的信息片段。常用的方法包括但不限于正则表达式、BeautifulSoup以及XPath等几种主流手段[^3]。 ##### 使用 BeautifulSoup 解析 HTML 文档 ```python from bs4 import BeautifulSoup soup = BeautifulSoup(content, 'html.parser') # 初始化 Beautiful Soup 对象 links = soup.find_all('a', href=True) # 查找所有的超链接标签 for link in links: print(link['href']) # 输出每个链接的目标 URL ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值