模块重点面试题
1、re的match和search区别?
"""
match函数只检测字符串开头位置是否匹配,匹配成功之后才会返回结果,否则返回None
search函数会在整个字符串内查找匹配,只找到第一个匹配然后返回一个包含匹配信息的对象,该对象可以通过调用group方法得到匹配的字符串,如果没有匹配到字符串就返回None
"""
2、什么是正则的贪婪匹配?什么是非贪婪匹配?两者的区别?
"""
贪婪模式:能匹配到的最大部分
“+”中的+会一直查找到最后一个符合条件的字符
非贪婪模式:匹配越少越好
“+?”会匹配到第一个符合条件的字符就停止
"""
3、json序列化时,默认遇到中文会转换成Unicode,如果要想保留中文怎么办?
"""
import json
a=json.dumps({'ddf':'你好'}, ensure_ascii=False)
"""
4、如果判断一个邮箱是否合法
"""
import re
if re.match(r'^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$', email):
print('right')
else:
print('wrong')
"""
5、写python爬虫都用到了那些模块,分别是做什么用的?
"""
requests:请求库
BeautifulSoup:解析库
pymysql:存储库,操作mysql数据库的
pymongo:操作MongoDB数据库的
selenium:自动化测试工具
"""
Only you can control your future
You're not alone. You still have family,peopel who care for you and want to save you.