chars = [, , , ] a = (chars, =x: (x)) (a) 输出结果: ['pear', 'apple', 'banana', 'watermelon'] 请问老师:lambda表达式中的参数x为什么能从列表chars中取值,内部有什么原理吗?
老师为什么字符串全部是”字母“或者”字母加数字“的形式的时候,比较其地址是否是同一个的时候,返回值显示是同一个地址呢?但是如果是”字母加上符号“的形式,查找地址是否是同一个的时候,相反不是同一个地址,这是为什么呢?难道只有包含特殊符号的形式才能启动字符串驻留机制吗?
>>> a="bb">>> b="bb">>> a is bTrue
>>> a="a1"
>>> b="a1">>> a is bTrue
>>> a="a#">>> b="a#">>> a is bFalse
老师,我完全是按照视频中的代码敲得,行末也没提示有错误,为什么运行起来提示格式化有问题。
老师我想问一下,我是按照课程中敲的代码,语句中也没抱错,问什么执行后会提示格式化错误?
请问为什么奇数和是2601,不应该是2500吗
老师我把
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方法不影响他的删除效果?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637