为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Python3 进阶教程_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Python3 进阶教程

咚咚呛 全栈工程师
难度中级
时长 4小时 6分
  • map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把函数 f依次作用在list的每个元素上,map()函数会返回一个迭代器,可以依次迭代得到原来list的元素被函数f处理后的结果。

    map(f, list)
    查看全部
  • 在Python中,使用套接字socket来建立起网络连接。

    服务端建立需要四个步骤:新建socket、绑定IP和端口(bind)、监听连接(listen)、接受连接(accept)。

    客户端仅需两个步骤:新建socket、连接服务端(connect)。

    当网络连接上以后,客户端和服务端就可以进行数据通信了,套接字通过send()函数发送数据,通过recv()函数接收数据。

    import socket
    
    server = socket.socket() # 1. 新建socket
    server.bind(('127.0.0.1', 8999)) # 2. 绑定IP和端口(其中127.0.0.1为本机回环IP)
    server.listen(5) # 3. 监听连接
    s, addr = server.accept() # 4. 接受连接
    print('connect addr:{}'.format(addr))
    content =s.recv(1024)
    print(str(content, encoding='utf-8'))  # 接受来自客户端的消息,并编码打印出来
    s.close()
    import socket
    
    client = socket.socket() # 1. 新建socket
    client.connect(('127.0.0.1', 8999)) # 2. 连接服务端(注意,IP和端口要和服务端一致)
    client.send(bytes('Hello World. Hello Socket', encoding='utf-8')) # 发送内容,注意发送的是字节字符串。
    client.close()
    python server.py
    python client.py
    查看全部
  • seek()方法,可以移动文件的游标位置,它接受一个参数,表示文件的位置,0:文件首部,1:当前位置,2:文件尾部,通过seek()可以把文件游标移动到文件首部但不删除文件的内容。

    查看全部
  • 从模块中导入函数并将其重命名:

    from ... import as ...
    from math import pow as mathpow
    查看全部
    0 采集 收起 来源:Python导入模块

    2025-08-14

  • __slots__的目的是限制当前类所能拥有的属性.

    class Person(object):
        def __init__(self,name):
            self.name = name
    p = Person('lily')
    p.age = 12
    class Student(object):
        __slots__ = ('name','gender')
        def __init__(self,name,gender):
            self.name = name
            self.gender
    s = Student('Tom','Male')
    s.age = 10   
    print(s.age)   #会出错
    查看全部
    1. dir()返回的是属性是字符串列表;

    2. 通过getattr()和setattr()来获取或设置对象属性;

    3. 通过type()获得变量类型。

    i = 10   type(i)
    dir(i)
    class Person(object):
        def __init__(self,name,age,**kwargs):
            self.name = name
            self.age = age
            for k,v in kwargs.items():
                setattr(self,k,v)
    查看全部
  • 多重继承,初始化方法只调用一次;

    多重继承的目的是从多种继承树选择并继承出子类,以便组合功能使用。

    class D(object):
        pass
    class A(D):
        pass
    class MK(object):
        pass
    class Ck(MK):
        pass
    class Ack(A,Ck):
        pass
    查看全部
    0 采集 收起 来源:Python中的多态

    2025-08-13

  • 定义继承类:

            1.定义子类,在括号里写明要继承的父类;

            2.初始化方法,需要调用super(子类,self).__init__(继承的属性).

    class Person(object):
        def __init__(self,name,gender):
            self.name = name
            self.gender = gender
    class Teacher(Person):
        def __init__(self,name,gender,subject):
            super(Teacher,self).__init__(name,gender)
            self.subject = subject
    查看全部
    0 采集 收起 来源:Python继承类

    2025-08-13

  • 1.类方法需要使用@classmethod来标记为类方法,否则定义的还是实例方法;

    2.类方法的第一个参数将传入类本身,通常将参数名命名为 cls.

    class Animal(object):
        __count = 0
        def __init__(self,name,age):
            self.name = name
            self.age = age
            Animal.__count += 1
        @classmethod
        def get_count(cls):
            return cls.__count
    查看全部
  • 访问私有属性,可通过类中定义实例方法。

    class Animal(object):
        def __init__(self,name,age,location):
            self.__name = name
            self.__age = age
            self.__location = location
        def get_info(self):
            return 'name = {}, age = {}, location = {}'.format(self.__name,self.__age,self.__location)
    查看全部
  • 不被外部访问的属性为私有属性,类属性或实例属性均不能对其访问。私有属性定义以双下划线“__”开头。

    class Animal(object):
        def __init__(self,name,age):
            self.name = name
            self.__age = age
    dog = Animal('Tom',3)
    print(dog.__age)   #会报错
    查看全部
  • 面向对象编程:属性 、 类 、 实例。

    查看全部
  • 1、解释下什么是面向对象编程

    查看全部
  • class Person(object):

       __slots__ = ('name', 'gender')

       def __init__(self, name, gender):
           self.name = name
           self.gender = gender


    class Student(Person):

       __slots__ = ('score',)

       def __init__(self, name, gender, score):
           self.name = name
           self.gender = gender
           self.score = score


    s = Student('Bob', 'male', 59)
    s.name = 'Tim'
    s.score = 99
    print(s.score)

    注:__slots__ = ('name', 'gender') 限定属性,不能动态添加属性

    查看全部
  • 通过type()函数,可以获得变量的类型。

    通过dir()方法,可以获取变量的所有属性:在dir列出的属性中,有很多是以下划线开头和结尾的,这些都是特殊的方法,称为内建方法,如果已知一个属性名称,要获取或者设置对象的属性,就需要用 getattr() 和 setattr( )函数了。

    >>> getattr(p, 'name') # 获取name属性

    'Alice'

    >>> setattr(p, 'name', 'Adam') # 设置新的name属性

    >>> s.name

    'Adam'

    查看全部

举报

0/150
提交
取消
课程须知
本课程是Python入门的后续课程 1、掌握Python编程的基础知识 2、掌握Python函数的编写 3、对面向对象编程有所了解更佳
老师告诉你能学到什么?
1、什么是函数式编程 2、Python的函数式编程特点 3、Python的模块 4、Python面向对象编程 5、Python强大的定制类
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!