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

python进阶

廖雪峰 移动开发工程师
难度中级
时长 3小时33分
  • 一.iteritems用法---迭代器
    a = {'a':1,'b':3}
    b = a.iteritems()
    list(b) =[('a',1),('b',3)]
    for k,v in b:     
        print k,v
    
    返回a 1
          b 3
    二.setattr用法
    setattr(对象,属性,值)


    查看全部
  • class Person(object):

        def __init__(self, name):

            self.__name = name

        def get_name(self):

            return self.__name

    p1 = Person('Bob')

    print p1.get_name()


    class Person(object):


        def __init__(self, name, score):

            self.__name = name

            self.__score = score


        def get_grade(self):

            if self.__score >= 85:

                return 'A'

            if self.__score >= 60:

                return 'B'

            return 'C'


    p1 = Person('Bob', 90)

    p2 = Person('Alice', 65)

    p3 = Person('Tim', 48)


    print p1.get_grade()

    print p2.get_grade()

    print p3.get_grade()


    查看全部
  • python提供的模块管理工具

    pip(推荐)---已内置到Python2.7.9

    easy_install

    例子,安装web.py模块

    (dos窗口中)pip install web.py

    进入python后就可以使用web.py中了

    查看全部
  • class Person(object):

        address = 'Earth'

        def __init__(self, name):

            self.name = name

    p1 = Person('Bob')

    p2 = Person('Alice')

    print 'Person.address = '+ Person.address

    p1.address = 'China'

    print 'p1.address = ' + p1.address

    print 'Person.address = ' + Person.address

    print 'p2.address = ' + p2.address

    del p1.address

    print p1.address


    '''

    class Person(object):


        __count = 0


        def __init__(self, name):

            Person.__count=Person.__count+1

            self.name=name

            print Person.__count


    p1 = Person('Bob')

    p2 = Person('Alice')


    print Person.__count

    '''


    class Person(object):

     

        __count = 0

     

        @classmethod

        def how_many(cls):

            return cls.__count

        def __init__(self,name):

            self.name=name

            Person.__count=Person.__count+1

    p1 = Person('Bob')

    print Person.how_many()

    p2 = Person('Alice')

    print Person.how_many()

     

    try:

        print Person.__count

        

    except AttributeError:

        print 'attributeerror'


    查看全部
  • class Person(object):

        address = 'Earth'

        def __init__(self,name):

            self.name = name

    print Person.address

    p1 = Person('Bob')

    p2 = Person('Alice')

    print p1.address

    print p2.address

    Person.address = 'China'

    print p1.address


    class Person(object):

        count = 0

        def __init__(self, name):

            Person.count = Person.count + 1

            self.name = name

    p1 = Person('Bob')

    print Person.count

    p2 = Person('Alice')

    print Person.count

    p3 = Person('Tim')

    print Person.count


    查看全部
  • print os.path.isdir(r'C:\Windows')
    print os.path.isfile(r'C:\Windows\notepad.exe')
    中r表示防止\加上后面的字符被强制转义
    查看全部
  • 如何区分包和普通目录

    包下面有init.py文件,且包的每一层都有(包可以有多层)

    查看全部
    1. functools.partial就是帮助我们创建一个偏函数的,不需要我们自己定义int2()

    2. functools.partial可以把一个参数多的函数变成一个参数少的新函数,少的参数需要在创建时指定默认值,

    查看全部
    0 采集 收起 来源:python中偏函数

    2018-09-26

  • class Person(object):

        def __init__(self,name):

            self.name = name

            self._title = 'Mr'

            self.__job__ = 'Student'

    p = Person('Bob')

    print p.name

    print p._title

    print p.__job__


    '''

    class Person(object):

        def __init__(self, name, score):

            self.name = name

            self.__score = score

    p = Person('Bob', 59)

    print p.name

    print p.__score

    '''

    class Person(object):

        def __init__(self, name, score):

            self.name = name

            self.__score = score

    p = Person('Bob', 59)

    try:

        print  p.name

        print p.__score

    except AttributeError:

        print  p.name

        print 'attributeerror'


    查看全部
  • 如果运算结果是 6/8,在显示的时候需要归约到最简形式3/4。

        def __str__(self):
            g = gcd(self.p, self.q)
            return '%s/%s' % (self.p / g, self.q / g)


    查看全部
  • class Person(object):

        def __init__(self,name,gender,birth):

            pass

            self.name = name

            self.gender = gender

            self.birth = birth

    xiaoming = Person('Xiao Ming','Male','1991-1-1')

    xiaohong = Person('Xiao Hong','Female','1992-2-2')

    print xiaoming.name

    print xiaoming.birth



    class Person(object):

        def __init__(self, name, gender, birth, **kw):

            self.name = name

            self.gender = gender

            self.birth = birth

            for k, v in kw.iteritems():

                setattr(self, k, v)

    xiaoming = Person('Xiao Ming','Male','1990-1-1',job='Student')

    print xiaoming.name

    print xiaoming.job

    **kw表示可以任意输入参数和对应的值,这些键值对被组织成字典dict,for k,v in kw.iteritems()表示对该字典的键值对进行迭代(k获得键,v获得值), iteritems()这个方法可以一个一个输出字典中的键值对,setattr(self,k,v)表示对实例自身设置属性和对应的值,self表示实例自身,k表示参数,v表示值。

    查看全部
  • class Person(object):

        pass


    p1 = Person()

    p1.name = 'Bart'


    p2 = Person()

    p2.name = 'Adam'


    p3 = Person()

    p3.name = 'Lisa'


    L1 = [p1, p2, p3]

    L2 = sorted(L1,lambda p1,p2:cmp(p1.name,p2.name))


    print L2[0].name

    print L2[1].name

    print L2[2].name


    查看全部
  • 函数能够返回一个字符串

    查看全部
  • __count由于前面加了两个下划线因而不能被访问,但是可以在创建实例的时候打印这个类属性。因为创建实例的时候是从内部访问的

    查看全部
  • class Person(object):

        pass

    xiaoming = Person()

    xiaohong = Person()

    print xiaoming

    print xiaohong

    print xiaoming == xiaohong


    查看全部

举报

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

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