python实训day3

1.函数剩余部分
#无参函数:不需要接受外部传入的参数
#有参函数:需要接受外部传入的参数,传参数多一不可,少一不可
#空函数:遇到一些比较难以实现的功能,会导致暂时无法继续编写代码,所以,一般在生产开发中,会将所有功能都先定义为空函数
#函数的返回值:在调用函数时,需要接受函数内部的产生结果,则用return接收
#函数对象:函数名指向的内存地址
#函数嵌套:
#(1)嵌套定义:在函数内定义函数
#(2)嵌套调用:通过函数内部的函数值,调用函数
#名称空间:python解释器自带的:内置名称空间
#自定义的py文件中,顶着最左边定义的,全局名称空间
#函数内部定义的:局部名称空间

复制代码
#无参函数
def foo():
    print('from foo')
foo()
#有参函数
def login(user,pwd):
    print(user,pwd)
login('lee',111)
def max(x,y):
    if(x>y):
        print(x)
    else:
        print(y)
max(10,20)
#空函数
def func():
    pass   #什么都不做
func()
#函数的返回值
def max(x,y):
    if(x>y):
        return x
    else:
        return y
res=max(10,20)
print(res)
#函数对象
def func():
    pass   #什么都不做
print(func())
func()
def func2():
    pass
#把函数对象放入字典中
#若用户选择对应的key值,就调用函数
dict1={'1':func,'2':func2}
choice=input('输入功能标号:').strip()
if choice in dict1:
    dict1[choice]
#嵌套定义:
def func():
    print('func')
    def func2():
        print('func2')
        def func3():
            print('func3')
#嵌套调用:
def func():
    print('func')
    def func2():
        print('func2')
        def func3():
            print('func3')
            return func3
        func3()
    return func2
    func2()
func()
func2=func()
func3=func2()
func3()
复制代码
#名称空间
name='lee'
def func():
    name='lee'
    print(name)
    def func2():
        print(name)
func()
复制代码
复制代码
2.内置模块
#内置模块
'''
1.time
2.json
3.os
4.sys
'''
复制代码
#1.time模块
import time
#获取时间戳
print(time.time())
#等待
time.sleep(1)  #等待10秒
print(time.time())

#3.0s模块
import os
#判断输入的文件是否存在
print(os.path.exists('01.py'))
#判断其绝对路径
print(os.path.exists('D:\pycharm\B\a.py'))
#获取当前文件根目录
#print(os.path.dirname())

#4.sys模块
import sys
#获取Python在环境变量中的文件路径
print(sys.path)
复制代码
#2.json模块
import  json
user_info={'name':'lee','age':18,'sex':'male'}
#dumps:序列化
#1.把字典转行成json数据
#2.把json数据转成字符串

res=json.dumps(user_info)
print(res)
print(type(res))
with open('user.txt','wt',encoding='utf-8')as f:
    f.write(res)
#json.loads():反序列化
#1.把json文件读取到内存
#2.loads把json格式的字符串转换成dict类型
with open('user.txt','r',encoding='utf-8')as f:
    res=f.read()
user_dict=json.loads(res)
print(user_dict)
print(type(user_dict))
#json.dump():自带write功能,直接传入文件句柄即可,自动触发write方法
with open('user_info.json','wt',encoding='utf-8')as f:
    json.dump(user_info,f)
#json.load():
with open('user_info.json','r',encoding='utf-8')as f:
    user_dict1=json.load(f)
    print(user_dict1)
复制代码
复制代码
3.模块与包
复制代码
#import 模块名
import B
#from
#导入B模块中的a文件
#自动执行a中的代码
#from B import a
from B import a
#_name_=B.a
#a
复制代码

 4.爬虫基础知识

复制代码
#
'''
http协议:
  请求URL:
       http://www.baidu.com/
  请求方式:
       GET
  请求头:
      Cookie:可能需要关注
      User_agent:证明你是浏览器,而非机器人
        注意:去浏览器的requests headers 中查找
        User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36 OPR/60.0.3255.151
      Host:www.baidu.com
'''
#requests模块使用
#pip3 install requests
#pip3 install -i 清华园地址 模块名
#pip3 install -i http://pypi.tuna.tsinghua.edu.cn/simple resquests
'''
import requests
response=requests.get(url='http://www.baidu.com/')
response.encoding='utf-8'
print(response) #<Response [200]>
print(response.status_code) #返回响应状态码
print(response.text) #返回相应文本
print(type(response.text))
with open('baidu.html','w',encoding='utf-8')as f:
    f.write(response.text)
'''
#爬取梨视频
import requests
res=requests.get(url='https://video.pearvideo.com/mp4/adshort/20190613/cont-1565846-14013215_adpkg-ad_hd.mp4')
print(res.content)
with open('视频.mp4','wb')as f:
    f.write(res.content)
复制代码
posted on 2019-06-20 20:42  微爱雪  阅读(150)  评论(0编辑  收藏  举报