day10 知识点

上节回顾
    socket
        1、导入模块
        2、创建socket
        3、
            字节
            send    sendall
                    10 = send('abcdefg')
                sendall:
                    while True:
                        10 = send('abcdefg')
                        10 = send('abcdefg')
            recv(20148)  // 上传文件时,最多接受2048个字节
            
    粘包: ack
    socketserver
        1、自定义类
        2、继承socketserver.BaseRequestHandeler
        3、运行handle
        4、调用server = socketserver.ThreadingTCPServer(('127.0.0.1', 8009), MyServer)
        5、运行server_server_forever()
        
        
作业回顾:
    编码   utf-8  3个字节   gbk  2个字节
    接收: subprocess > win > gbk编码的字节 
    

断点续传:
    文件:
        a,追加
        w,清空写
    文件指针:
        seek(num)

知识点:
    作用域
    python 中无块级作用域
        if 1 == 1:
            name = 'rain'
        print(name) # 可以打印(原因,python无块级作用域)
    python 中以函数为作用域
        def func():
            name = 'rain'
            return name
            
        func()
        print(name)    # NameError: name 'name' is not defined
    
    python 作用域链,由内向外找
        函数未执行前,作用域已经定义
        
    python的作用域在执行之前已经确定 
        name = 'rain'
        def f1():
            print(name)
        def f2():
            name = 'sunny'
            return f1
        f1()  # rain
        
py27多继承、py35多继承    
python27分类
    新式类
        继承(object)
    经典类
        不继承(object)
python35
    新式类
        默认继承(object)
上课知识点总结

作用域

# 作用域
# python中无块级作用域
if 1 == 1:
    name = '123'
print(name)


# python中以函数为作用域
def func():
    name = 'rain'
    return name
func()
print(name)
"""
Traceback (most recent call last):
  File "E:/s13/day10/test.py", line 16, in <module>
    print(name)
NameError: name 'name' is not defined
"""
name = 'rain'
def f1():
print(name)

def f2():
name = 'sunny'
return f1
f1()
知识点:
    作用域
    python 中无块级作用域
        if 1 == 1:
            name = 'rain'
        print(name) # 可以打印(原因,python无块级作用域)
    python 中以函数为作用域
        def func():
            name = 'rain'
            return name
            
        func()
        print(name)    # NameError: name 'name' is not defined
    
    python 作用域链,由内向外找
        函数未执行前,作用域已经定义
        
    python的作用域在执行之前已经确定 
        name = 'rain'
        def f1():
            print(name)
        def f2():
            name = 'sunny'
            return f1
        f1()  # rain
上述代码中文解释

lambda知识点

li = [lambda :x for x in range(10)]
res = li[0]()
print(res)

# 原型 li
= [] for i in range(5): def f1(): return i li.append(f1) a = li[2]() print(a) li = [] for i in range(5): def f1(x=i): return x li.append(f1) print(li[0]()) # 0 print(li[1]()) # 1 print(li[2]()) # 2
py27多继承、py35多继承    
python27分类
    新式类
        继承(object)
    经典类
        不继承(object)
python35
    新式类
        默认继承(object)
原文地址:https://www.cnblogs.com/yxy-linux/p/5675391.html