python基础-Task5

系统 1422 0

类和对象

类:  用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。对象是类的实例。

方法:类中定义的函数。

类变量 :类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。类变量通常不作为实例变量使用。

数据成员 :类变量或者实例变量用于处理类及其实例对象的相关的数据。

方法重写 :如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。

局部变量 :定义在方法中的变量,只作用于当前实例的类。

实例变量 :在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。

继承 :即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个Dog类型的对象派生自Animal类,这是模拟"是一个(is-a)"关系(例图,Dog是一个Animal)。

实例化 :创建一个类的实例,类的具体对象。

对象 :通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方法。

和其它编程语言相比,Python 在尽可能不增加新的语法和语义的情况下加入了类机制。Python中的类提供了面向对象编程的所有基本功能:类的继承机制允许多个基类,派生类可以覆盖基类中的任何方法,方法中可以调用基类中的同名方法。对象可以包含任意数量和类型的数据。

正则表达式,语法规则。

re模块

  • re.match函数 re.match(pattern, string, flags=0) 
  • 通配符

    • 匹配任意除换行符“\n”外的字符;
    • *表示匹配前一个字符0次或无限次;
    • +或 后跟?表示非贪婪匹配,即尽可能少的匹配,如 ?重复任意次,但尽可能少重复;
    • .*? 表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复。
  • re.search函数

    re.search 扫描整个字符串并返回第一个成功的匹配。格式如下:

    re.search(pattern, string, flags=0)

  • re.match()与re.search()的区别 re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。 实例:

            
              In: line = "Cats are smarter than dogs"
    # .* 表示任意匹配除换行符(\n、\r)之外的任何单个或多个字符
    matchObj = re.match( r'are (.*?) than (.*?)', line, re.M|re.I)
    if matchObj:
        print("matchObj.group() : ", matchObj.group())
        print("matchObj.group(1) : ", matchObj.group(1))
        print("matchObj.group(2) : ", matchObj.group(2))
    else:
        print("No match!!")
Out:No match!!

In: line = "Cats are smarter than dogs"
    # .* 表示任意匹配除换行符(\n、\r)之外的任何单个或多个字符
    matchObj = re.search( r'are (.*?) than (.*?)', line, re.M|re.I)
    if matchObj:
        print("matchObj.group() : ", matchObj.group())
        print("matchObj.group(1) : ", matchObj.group(1))
        print("matchObj.group(2) : ", matchObj.group(2))
    else:
        print("No match!!")
Out:matchObj.group() :  are smarter than dogs
    matchObj.group(1) :  smarter
    matchObj.group(2) :  dogs

            
          

datetime模块学习,参考

http请求 

  • 安装requests模块并导入
            
              import requests

            
          
  • GET请求
            
              import requests

r = requests.get('https://www.douban.com/')
print(r.status_code)
print(r.text)

            
          
  • POST请求
            
              r = requests.post('https://accounts.douban.com/login', data={'form_email': 'abc@example.com', 'form_password': '123456'})
print(r.text)

            
          
  • cookie传递
            
              cs = {'token': '12345', 'status': 'working'}
# timeout 设置请求超时时间
r = requests.get(url, cookies=cs, timeout=2.5)
            
          

更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论