为了账号安全,请及时绑定邮箱和手机立即绑定
  • li=['bob', 'about', 'Zoo', 'Credit']

    def f (x):
    return li[0]

    l=sorted(li,key=f)
    print(l)
    查看全部
  • li=list(range(1,101))
    print(li)
    def f(x):
    return (x**0.5) % 1 == 0


    for i in filter (f,li):
    print(i)
    查看全部
  • li=['lalice', 'BOB', 'CanDY']

    def f(s):
    return s.capitalize()

    for i in map(f,li):
    l=list(map(f,li))
    print(l)

    查看全部

  • #请参考Student类,编写Teacher类,老师拥有任教某个科目的属性。

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

    class Taecher (Students):
    def __init__(self,name,gender,score,account):
    super().__init__(name,gender,score)
    self.account=account

    def get_info (self):
    return self.name,self.gender,self.score,self.account
    tt=Taecher("张三","女",90,"语文")

    print(tt.get_info())

     
    查看全部
    0 采集 收起 来源:Python继承类

    2024-10-22

  • #果将类属性count改为私有属性__count,则外部无法获取__count,但是可以通过一个类方法获取,请编写类方法获得__count值。


    class Animal(object):
    __count= 999
    def __init__(self, name, age):
    self.name = name
    self.age = age

    @classmethod
    def set_count (cls, new_count):
    cls.__count=new_count

    @classmethod
    def get_count(cls):
    return cls.__count


    print(Animal.get_count())

    Animal.set_count(9868)
    print(Animal.get_count())


    在类上调用方法
    查看全部
  • #Animal类的age、name、localtion定义成私有属性,并定义对应的方法修改和获取他们的值。 class Animal : def __init__(self,name,age,localtion): self.__name=name self.__age=age self.__localtion=localtion def get_name (self): return self.__name def change_name (self,new_name): self.__name=new_name def get_age (self): return self.__age def change_age (self,new_age): self.__age=new_age def get_location (self): return self.__localtion def change_localtion(self,new_localtion): self.__localtion=new_localtion dog=Animal('dog',88,'郑州') print(dog.get_name(),dog.get_location()) dog.change_localtion('北京') print(dog.get_name(),dog.get_location())
    查看全部
  • # 实例私有属性
    class Animal(object):
        def __init__(self, name, age):
            self.name = name
            self._age = age

    dog = Animal('wangwang',8)
    print(dog.name) # ==> wangwang
    print(dog._age) # ==> 1#不能从外部访问私有属性
    查看全部

  • 请给 Animal类添加一个类属性 count,每创建一个实例,count 属性就加 1,这样就可以统计出一共创建了多少个 Animal的实例。

    class Animal ():
    count =0
    def __init__(self,name,age):
    self.name=name
    self.age=age
    count+=1


    dog= Animal ('dog',2)
    cat= Animal ('cat',6)
    print(dog.name,dog.age)
    print(cat.name,cat.age)
    查看全部
    0 采集 收起 来源:Python类属性

    2024-10-21

  • class Animal ():
        def __init__(self,name,age)
        self.name=name
        self.age=age
    dog=Animal('dog',2)
    cat=Animal('cat',6)
    print(dog.name,dog.age)
    print(cat.name,cat.age)
    查看全部
  • class Animals() :
    dog=Animal()
    cat=Animal()
    查看全部
  • 1.类的私有属性以__开头,无法通过外部访问,只能通过内部方法访问,为了保护类或实例属性不被外部污染而设计的。

    查看全部
  • str = "Hello"
    my_list = [str]
    print(my_list)  # 输出: ['Hello']

    str = "Hello"
    as_item_list = list(str)
    print(as_item_list)  # 输出: ['H', 'e', 'l', 'l', 'o']
    查看全部
  • 4-4  Python类的数学运算

    1. 如何理解def __add__(self, r):
             return Rational(self.p * r.q + self.q * r.p, self.q * r.q)

      >>> r1 = Rational(1, 2)
      >>> r2 = Rational(2, 3)
      >>> print(r1 + r2)

    思路过程:

    不理解r是什么,后面经过查找,代码存在r1+r2时才会调用__add__()函数,此时self.p和self.q指的是r1的p和q,而r.p和r.q指的是r2.p和r2.q

    也就是 (1*3+2*2)/2*3 有理数的答案

    查看全部
  • class Rational(object):
        def __init__(self, p, q):
            self.p = p
            self.q = q
        def __add__(self, r):
            return Rational(self.p * r.q + self.q * r.p, self.q * r.q)
        def __str__(self):
            return '{}/{}'.format(self.p, self.q)
            
        
    r1 = Rational(1, 2)
    r2 = Rational(2, 3)
    r3 = Rational(1, 6)
    print(r1+r2)
    print(r1.__add__(r2))

    重载运算符:

    r1+r2 和

    r1.__add__(r2) 相同

    查看全部
  • class Fib(object):
        def __init__(self,num):
            self.num=num
        
        def __len__(self):
            return len(self.num)
    
    f = [0,1,1,2,3,5,8,13,21,34]
    f_ = Fib(f)
    
    print(f)
    print(len(Fib(f)))

    Fib是一个类

    f_ 是这个类的一个实例,等同于Fib(f)

    f 是一个列表,也是f_ 的属性

    查看全部
  • 私有属性从类的内部进行访问

    第5行

    class Animal(object):
        def __init__(self,name,age):
            self.name=name
            self.__age=age
            print(self.__age)
    dog=Animal('D',5)
    查看全部
  • 1,实例属性的优先级高于类属性

    2,通过实例可以访问类属性,但不能修改类属性

    3,类属性私有化之后,不能从外部访问,只能在类内部访问

    查看全部
  • class Animal(object):
        __localtion = 'Asia'
        __count = 0
        def __init__(self, name, age):
            Animal.__count += 1
            self.name = name
            self.age = age

        @classmethod
        def set_localtion(cls, localtion):
            cls.__localtion = localtion

        @classmethod
        def get_localtion(cls):
            return cls.__localtion

        @classmethod
        def get_count(cls):
            return cls.__count

    print(Animal.get_localtion()) # ==> Asia
    Animal.set_localtion('Afica')
    print(Animal.get_localtion()) # ==> Africa
    print(Animal.get_count()) # ==> 0
    cat = Animal('Huamao',2)
    print(Animal.get_count()) # ==> 1
    查看全部
  • class Animal(object):
        def __init__(self, name, age, localtion):
            self.__name = name
            self.__age = age
            self.__localtion = localtion

        def get_info(self):
            return 'name = {}, age = {}, localtion = {}'.format(self.__name, self.__age, self.__localtion)
        def set_info(self,name,age,localtion):
            self.__name = name
            self.__age = age
            self.__localtion = localtion

    dog = Animal('wangwang', 1, 'GuangDong)
    print(dog.get_info())
    dog.set_info('cat',2,'GuiYang')
    print(dog.get_info())
    查看全部
  • class Animal(object):
        localtion = 'Asia'
        count = 0
        def __init__(self, name, age):
            Animal.count += 1
            self.name = name
            self.age = age
    查看全部
    0 采集 收起 来源:Python类属性

    2024-09-19

  • 在Python中初次操作文件可能会尝试先读file.white()后写file.read(),结果会发现明明已经写入数据,但读出内容依然为空的问题。


    如下例:


    file = open('./a.txt', mode="a+", encoding="utf8")

    file.write("123456")

    str = file.read()

    print(str)

    # 读出内容为空

    # a.txt 内容为123456

    1

    2

    3

    4

    5

    6

    造成这种问题的原因是,当写入操作完成时,文件光标处于文件末尾处;接着继续执行读取操作,系统从光标处向后读取,但光标已处于末尾,所以读出内容为空。


    该问题有两种解决方案:


    方法一:规范代码,将读取操作与写入操作分类,在一种操作执行结束后应及时关闭文件指针file.close()。使用这种方法可以是文件安全有效,不会被其他操作影响预计效果。

    如下:


    # 写入

    file = open('./a.txt', mode="w", encoding="utf8")

    file.write("123456")

    file.close()

    # 读取

    file = open('./a.txt', mode="r", encoding="utf8")

    str = file.read()

    print(str)

    # 输出为 123456

    # a.txt 123456

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    方法二:使用seek()方法移动光标至指定位置


    file.seek(offset,whence=0)


    offset:偏移量,即需要移动偏移的字节数。


    whence:要从哪个位置开始偏移,默认值为0;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。


    同时whence也可以使用常量名表示(需要引入os模块):

    whence常量:

    os.SEEK_SET: 0 相对文件起始位置

    os.SEEK_CUR: 1 相对文件的当前位置

    os.SEEK_END: 2 相对文件的结束位置


    对于本问题,可以在写入之后将光标从新移动至文件开头位置,然后执行读取操作


    file = open('./a.txt', mode="a+", encoding="utf8")

    file.write("123456")

    # 表示移动0个位置,从文件开头开始

    file.seek(0, 0)

    str = file.read()

    print(str)

    # 输出为 123456

    # a.txt 123456

    1

    2

    3

    4

    5

    6

    7

    8

    注意:Python3中不支持非二进制的文件光标移动位置且offset按位取值,所以非二进制文件建议只使用将光标移动到开头或末尾的功能,即offset==0,避免出现io.UnsupportedOperation: can't do nonzero cur-relative seeks或者io.UnsupportedOperation: can't do nonzero end-relative seeks的错误

    ————————————————


                                版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

                            

    原文链接:https://blog.csdn.net/w18211679321/article/details/81451838

    查看全部
  • # Enter a
    def say_hello(name):
       print('您好呀,{}'.format(name))
       print(f"你好啊,{name}")
       print("宁浩呀,我是%s"%name)


    say_hello("xioaming")

    查看全部
    0 采集 收起 来源:Python定义模块

    2024-09-07

  • https://img1.sycdn.imooc.com/66db220700015bef10010410.jpg

    class Person(object):

        def __init__(self, name, gender):

            self.name = name

            self.gender = gender

             

    class Student(Person):    

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

            super(Student, self).__init__(name, gender)        

            self.score = score   

             

        def __str__(self):        

            return 'Student: {}, {}, {}'.format(self.name, self.gender, self.score)    

        def __repr__(self):        

            return 'STUDENT: {}, {}, {}'.format(self.name, self.gender, self.score)

             

    s = Student('Bob', 'Male', 88)

     

    print(s)

    print('%s' % s)

    print('%r' % s)

    print(str(s))

    print(repr(s))

    查看全部
首页上一页1234567下一页尾页

举报

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

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

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