老师,您好,我一直有一个疑问。就是说什么时候使用super,又或者什么时候使用我们的普通继承。两者我一直不知道如果在不同的场景使用
请问一下,虽然可以不用纠结ide,但是如果企业规定使用某个ide怎么办呢?比如我熟悉pycharm,但是企业用的是eclipse呢?
请问一下既然Python3不兼容Python2,从Python3学起,那么如果出现了Python4,我们需要从头学起吗?
请问一下既然Python3不兼容Python2,从Python3学起,那么如果出现了Python
两个集合求并集以后,会返回一个新的集合,这个新集合中元素排列是按照什么规则进行的?
给的资料上是:
a = {1,3,’sxt’}
b = {‘he’,’it’,’sxt’}
求并集以后结果是:
{1,3,’sxt’, ‘he’,’it’}
我自己操作得到的结果不是这样,得到的结果是
{1,3,’it’, ‘he’,’sxt’}
在Python3.8和3.6版本都是这个结果,而不是资料上给的。
老师,我做练习的时候,遇到问题,我明明写了两个参数但是它提示我还少一个参数
# 定义战士类 class Warrior: def __init__(self): self.health = 50 self.attack = 5 self.is_alive = True # 定义骑士类 class Knight(Warrior): def __init__(self): super().__init__() self.attack = 7 # 定义军队 class Army: def __init__(self): self.arm = [] def add_units(self, soldier, number): for i in range(number): new_unit = soldier self.arm.append(new_unit) return self.arm # 定义战斗类 class Battle: def fight(self, armclass1, armclass2): arm1 = armclass1.arm arm2 = armclass2.arm while len(arm1) > 0 and len(arm2) > 0: if fight1(arm1[0], arm2[0]) == True: arm2.remove(arm2[0]) else: arm1.remove(arm1[0]) if len(arm1) > 0: return True else: return False def fight1(unit_1, unit_2): while unit_1.is_alive and unit_2.is_alive: unit_2.health -= unit_1.attack if unit_2.health <= 0: unit_2.is_alive = False break unit_1.health -= unit_2.attack if unit_1.health <= 0: unit_1.is_alive = False break return unit_1.is_alive if __name__ == '__main__': # battle tests my_army = Army() my_army.add_units(Knight, 3) enemy_army = Army() enemy_army.add_units(Warrior, 3) Battle.fight(my_army, enemy_army) army_3 = Army() army_3.add_units(Warrior, 20) army_3.add_units(Knight, 5) army_4 = Army() army_4.add_units(Warrior, 30) battle = Battle()
import copy a=[90,80,[6,7]] b=copy.copy(a) print("a",a) print("b",b) b.append(70) b[2].append(8) print("a",a) print("b",b)
为什么不对呀?
为什么运行错误呀?
a=[,,[,]] b=copy.copy(a) (,a) (,b) b.append() b[].append() (,a) (,b)
给的资料中指出访问元组时会返回元组对象,但是我自己在通过索引进行访问的时候发现,如 果只访问元组中的一个值的时候,并不会返回一个元组对象,而通过切片访问超过2个元组对象的时候才会返回元组对象,请问是我哪里理解的有问题吗?
老师,在pycharm中画完之后马上图就消失了,有没有办法让图一直停留?
运行输入idle,显示windows找不到idle
class Employee : id=1000 def __init__(self,name,salary): Employee.id += 1 #这行为什么不能是self,为什么这样能实现加employee指的是什么 self.name=name self.__salary=salary
import math def f(x1,y1,x2,y2,x3,y3): '''输入三角形三个顶点的坐标,若有效则计算三角形的面积;如坐标无效,则给出提示''' a = math.sqrt((x1-x2)**2+(y1-y2)**2) b = math.sqrt((x1-x3)**2+(y1-y3)**2) c = math.sqrt((x3-x2)**2+(y3-y2)**2) if a+b>c and a+c>b and b+c>a: print('为三角形') s = (1/2)*(x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2) print('三角形面积为{0:.2f}'.format(s)) else: print('不是三角形') f(0,0,4,8,6,5)
运行结果:
为三角形 三角形面积为-14.00
请问:这个作业中,输入有效坐标后可能会出现负数,代码如何改进呢?谢谢老师
为什么用pycharm 运行不了turtle的运行图
构造函数 __init__本质上不是对应__new__方法吗?这样有点难理解,麻烦老师解答一下。
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637