老师我把
c = test01()
这个C是代表的什么意思?好像打印出来和c=test01 数值不一样。
老师!
关于海龟绘图问一个问题。
以画圆为例子、视频里应该出现了下面这两个用法。
这两个功能应该是一样的,但为什么是一样的啊?turtle. 是等价于 turtle.pen()的么?
就是说turtle. 后面不再加其他参数,就是默认为turtle.pen()么。
①
t = turtle.pen()
t.circle(100)
②
turtle.circle(100)
老师,资料里是if a.upper=='Q'是什么意思
r1 = ['高小一', 18, 30000, '北京'] r2 = ['高小二', 19, 20000, '上海'] r3 = ['高小五', 20, 10000, '深圳'] tab = [r1, r2, r3]
请问老师:上表中的内存图,是否可以如下这样理解,谢谢
老师好,关于代码中不懂的地方标注在注释里了,希望帮忙解答,谢谢
#测试单例模式 class MySingleton: __obj = None #这里为什么要引入object?意义是什么呢 __init_flag = True def __new__(cls, *args, **kwargs): #这里的new方法是做什么的呢,之前从没没用过,这里和下面init方法的区别是什么呢? if cls.__obj ==None: #上一行代码中 *args, **kwargs 分别是什么作用? cls.__obj = object.__new__(cls) return cls.__obj def __init__(self,name): if MySingleton.__init_flag: print("init.....") self.name = name MySingleton.__init_flag = False a = MySingleton("aa") b = MySingleton("bb") print(a) print(b) c = MySingleton("cc") print(c)
python中不是没有重载吗,那为什么一个类里可以有两种同名方法呢?
class Employee: def __init__(self,name,age,salary): self.__name = name self.__age = age self.__salary = salary @property def salary(self): return self.__salary @salary.setter #对salary属性的设置 def salary(self,salary): if 1000<salary<100000: self.__salary = salary else: print("ERROR") e = Employee('Leo',20,10000) print(e.salary) e.salary = 1000000 print(e.salary)
append增加元素的方式,是不是也创建了新的对象,他们的id都不一样了
'''定义一个 Employee 雇员类,要求如下: (1) 属性有:id、name、salary (2) 运算符重载+:实现两个对象相加时,默认返回他们的薪水和 (3) 构造方法要求:输入 name、salary,不输入 id。id 采用自增的方式,从 1000 开始自增,第一个新增对象是 1001,第二个新增对象是 1002 (4) 根据 salary 属性,使用@property 设置属性的 get 和 set 方法。set 方法要求输入:1000-50000 范围的数''' class Employee:#定义一个雇员类 id=1000#id从1000开始自增 def __init__(self,name,salary): self.name=name self.__salary=salary Employee.id=Employee.id+1 def __add__(self,other): if isinstance(other,Employee): return "薪水和:{}".format(other.__salary+self.__salary) else: return "同一对象,不能相加" @property def salary(self): return "顺序是:{0},名字是:{1},薪资是:{2}".format(Employee.id,self.name,self.__salary) @salary.setter def salary(self, salary): if 1000 < salary < 50000: self.__salary = salary else: print("输入错误!范围有误!!") e1=Employee("王老大",2000) print(e1.salary) e2=Employee("王老二",20000) print(e2.salary) print(e1+e2) e3=Employee("王老幺",200) print(e3.salary) 老师,为什么我这个范围不对但是不返回范围有误
老师,我们在这里相当于重写了del方法,视频中的p2变量相当于被我们del删除了,p1也是在程序最后一行代码执行完python自动调用del方法把p1删除了,那么我有点奇怪的是,我们重写的这个del方法只有print语句一行,实际上是个假方法,为什么这个假方法我们在调用它删除p2的时候还真的给他删了呢?是不是重写del方法不影响他的删除效果?
Python 3.7.7 (tags/v3.7.7:d7c567b08f, Mar 10 2020, 10:41:24) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> x = 3
y = 4
a = 1
b = 2
s = (5+10*x)/5-13*(y-1)(a+b)/x+9*(5/x+(12+x)/y)
print(s)
SyntaxError: multiple statements found while compiling a single statement
>>> 这是哪里出错了的呢
class Student: school = '123' def __init__(self, name): self.name = name def say_name(self): print(self.name) print(Student.school) print(self.school) a=Student()
请问老师:在类方法中,Student.school和self.school 均可以引用到类属性school='123',这两者有何区别,在内存中是如何存在的?谢谢
#测试单例模式 class MySingleton: __obj = None #类属性 def __new__(cls,*args,**kwargs): if cls.__obj ==None: cls.__obj = object.__new__(cls) return cls.__obj def __init__(self,name): print("init....") self.name = name a = MySingleton("aa") b = MySingleton("bb") print(a) print(b)
老师,代码一样,但是结果不一样
a=3,我在赋值给a前,3的内存块里的地址是否已经存在了的
a1 = ["高小一",18,30000,"北京"] a2 = ["高小二",19,20000,"上海"] a3 = ["高小五",20,10000,"深圳"] a = [a1,a2,a3] b = ["姓名","年龄","薪资","城市"] for i in (1,4): c = dict(zip(b,a[i])) print(c)
老师,你好,请问一下我这个问题出在哪里,运行结果出错
老师,请问多态是不是就是不同情况下对父类中的方法进行重写?那如果我想要调用父类中被重写的方法是不是应该用super()获得?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637