python高阶2(正则表达式与网络编程)

正则表达式

作用:实现对字符串的复杂控制

模块:re(系统模块)

方法:

1.split(pattern,string),使用字符串中与pattern规则匹配的内容进行分割,返回一个列表

        pattern,正则表达式

        string,待处理的字符串

2.sub(pattern,repl,string),使用字符串中与pattern规则匹配的内容进行替换(替换成repl)。

        pattern,正则表达式

        repl,新内容

        string,待处理的字符串

3.findall(pattern,string,[控制字符]),以列表返回字符串中与pattern规则匹配的内容,如果没有匹配的则返回一个空列表

        pattern,正则表达式

        string,待处理的字符串

        控制字符:re.S,使元字符.可以匹配包括换行符\n在内的所有字符

                          re.I,忽略大小写

元字符

        \w,匹配一个单词字符(字母数字下划线)

        \W,匹配一个非单词字符

         \d,匹配一个数字字符

        \D,匹配一个非数字字符

         \s,匹配一个空白字符

        \S,匹配一个非空白字符

         .,匹配除换行符\n以外的任意一个字符

         ^,匹配字符串开头

        $,匹配字符串结尾

         *,表示匹配前一个字符任意次

         +,表示匹配前一个字符至少1次

        ?,表示匹配前一个字符0次或1次

        {n},表示匹配前一个字符n次

        {n,},表示匹配前一个字符至少n次

        {n,m},表示匹配前一个字符至少n次,最多m次

        {,m},匹配前一个字符最多m次

网络编程

        OSI模型:7层

        TCP\IP模型:4层

应用层:HTTP,HTTPS,FTP,SMTP,IMAP,POP3

HTTP协议请求方法(最常用):GET(获取),POST(提交)

传输层:TCP,UDP

 建立连接:三次握手

 断开连接:四次挥手

 socket编程

套接字,工作在传输层与应用层之间,通过TCP或者UDP协议传输信息,分为客户端和服务端。

 模块:socket

使用步骤:

服务端

1. 创建socket对象:soc=socket.socket()

2.绑定IP和端口(0-65535):soc.bind((ip,port))

3.设置监听:soc.listen()

soc.listen(5)  表示同时监听5个客户端,不传入则默认没有限制

4.等待客户端连接:soc.accept()

client,addr=soc.accept()      返回客户端对象与地址

客户端

 1.创建socket对象:soc=socket.socket()

2.连接服务器:soc.connect((ip,port))

公共方法:

send(),发送消息

recv(),接收消息

request:模拟客户端向服务端发送http或者https请求

        模块:requests-------pip install requests

        GET请求:get(url[,params,headers,file])

        url:请求地址

        params:请求的参数,一般使用字典传入

        header:请求头

        file:一般用于上传文件

 例:获取豆瓣电影排行榜

 按照评分从高到低排序

movies.sort(key=lambda x:x[1],reverse=True)

print(movies)

例:从网站下载图片

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值