zoukankan      html  css  js  c++  java
  • python基础学习7-网络编程、异常处理、面向对象

    1       网络编程

    http://docs.python-requests.org/zh_CN/latest/user/quickstart.html

    from urllib.request import urlopen
    from urllib.parse import urlencode
    url = 'http://118.24.3.40/api/user/login'
    # res = urlopen(url)        发送的是get请求
    # print(res.read().decode())

    data = {'username':'niuhanyang','passwd':'aA123456'}
    # res = urlopen(url,urlencode(data).encode())     #发送的是post请求,urlencode(data)将字典转换成k=v&k1=v1,再使用encode转换成二进制
    # print(res.read().decode())        #
    再把获取的数据转换成字符串


    import requests
    url2 = 'http://118.24.3.40/api/user/stu_info'
    # res = requests.get(url2,params={'stu_name':'小黑'})     #发送get请求,直接使用字典传入
    # print(res.json())       #json
    直接把返回结果转成字典

    url3 = 'http://118.24.3.40/api/user/login'
    data = {'username':'niuhanyang','passwd':'aA123456'}
    # res = requests.post(url3,data=data)         #发送post请求,入参是字典类型的
    # print(res.json())

    url4='http://118.24.3.40/api/user/add_stu'
    data =  {
        "name":"小黑111",
        "grade":"天蝎座",
        "phone":18312345678,
        "sex":"",
        "age":28,
        "addr":"河南省济源市北海大道32"
     
    }
    # res = requests.post(url4,json=data)     #入参是json类型的
    # print(res.json())

    url5='http://118.24.3.40/api/user/gold_add'
    data = {'stu_id':15,'gold':200}
    cookie = {'niuhanyang':'abd9a0995f4696e1a60133220b32037a'}
    # res = requests.post(url5,data=data,cookies=cookie)        #cookie
    # print(res.json())

    url6='http://118.24.3.40/api/user/all_stu'
    header = {'Referer':'http://api.nnzhp.cn/'}
    # res = requests.get(url6,headers=header)         #header
    # print(res.json())           #
    返回的是字典格式的数据

    url7='http://www.nnzhp.cn'
    # res = requests.get(url7)
    # print(res.text)     #
    返回的是字符串

    #
    下载文件是二进制格式的,需要使用wb二进制方式写入到一个文件中去
    url8='http://qiniuuwmp3.changba.com/1084511584.mp3'
    # res = requests.get(url8)
    # print(res.content)      #
    返回的就是二进制的
    # with open('
    魔鬼中的天使.mp3','wb') as fw:       #wb写二进制格式的数据
    #     fw.write(res.content)

    url9='https://aliimg.changba.com/cache/photo/855e5493-f018-44db-8892-c8660649327b_640_640.jpg'
    res= requests.get(url9,verify=False)        #verify=False如果是https的话需要添加这个参数
    print(res.content)
    with open('tupian.jpg','wb') as fw:
        fw.write(res.content)
       
    print(res.json())       #必须返回的是json猜可以用
    print(res.text)         #返回的是字符串类型,如果是下载文件text就不能使用
    print(res.content)      #用来下载文件用的,返回的是二进制格式
    print(res.cookies)      #获取到返回的所有cookie
    print(res.headers)      #获取到返回的所有header

    #上传文件
    url10 = 'http://118.24.3.40/api/file/file_upload'
    data = {'file':open('魔鬼中的天使.mp3','rb')}     #rb读取二进制文件
    res = requests.post(url10,files=data)       #上传文件使用files
    print(res.json())

    2       异常处理

    money = 1000
    num = input('please enter a num:')
    try:
        num = float(num)
        res = money/num

    except Exception as e:      #如果预料不到异常可使用Exception来捕捉
       
    print(e)
    except ValueError as e:     #出现异常了,就走except下面的代码
       
    print('出现异常了')
        print('你输入的价格不合法')
        print(e)
    except ZeroDivisionError as e:
        print('除数不能为0')
    else:       #没有出现异常走else下面的代码
       
    money -=num
        print('你的余额是%s'%money)
        print(num)
    finally:        #不管是否出错都会执行,这个在数据库中可用于关闭游标、连接使用
       
    print('我是finally')

    3       面向对象编程

    self代表本类的对象,存的是实例化的内存地址

     

    方法存到类的内存里,属性存到实例化对象内存里。

  • 相关阅读:
    Spring Boot基础
    MyBatis开启二级缓存
    MyBatis逆向工程
    html实现“加入收藏”代码
    vue-router 基本使用
    vue 脚手架安装
    webpack入门 webpack4常见出错之处
    $.ajax()方法详解
    防止网页被嵌套
    H5字符实体参考
  • 原文地址:https://www.cnblogs.com/better0903/p/9383537.html
Copyright © 2011-2022 走看看