b = int(input("请输入分数:0到100之间")) y = '' if b > 100 or b < 0: y = int(input("输入错误")) else: if b >= 90: y = "A" elif b >= 80: y = "B" elif b >= 70: y = "C" elif b >= 60: y = "D" else: y = "E" print("分数是{0},等级是{1}".format(b, y)) 为什么的输入错误后在输入分数是b 等级也是b 等级不应该没有结果吗
'''定义一个 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) 老师,为什么我这个范围不对但是不返回范围有误
MySingleton: __obj = __init_flag = (*args**kwargs): .__obj == : .__obj = .() .__obj (name): MySingleton.__init_flag: () .name = name MySingleton.__init_flag = a = MySingleton() (a) b = MySingleton() (b)
老师 这程序 表达什么意思? 我个人理解 ,先用a第一次调用了MySingleton()这个类, 进入类里面程序,再用__new__方法判断是否有这个aa对象, 如果没有就创建一个,并返回cls.__obj (这个返回不知道有啥意思?); 然后,再进入__init__方法来判断aa对象是否为真, 如果为真就打印“初始化第一个对象”这句话。 下面,又用b调用MySingleton()这个类, 然后对象“dd”进入类里面的程序, 先用__new__方法判断是否有这个dd对象, 如果没有就创建一个,并返回cls.__obj (这个返回不知道有啥意思?); 然后,再进入__init__方法来判断dd对象是否为真, 因第一次aa调用过了,所以MySingleton.__init_flag 为假; 然后dd就不能再输出打印“初始化第一个对象。。。。”了 程序执行完毕 老师 是这个流程吗?
class Student: company="LJCS" #类属性 count=0 #类属性 def __init__(self,name,score): self.name=name #实例属性 self.score=score #实例属性 self.count=self.count+1 #计数器 创建一个对象加1 def say_score(self): print("我的公司名称是:{0}".format(self.company)) print("{0}的分数是:{1}".format(self.name,self.score)) print("一共创建了{0}个对象".format(self.count)) s1=Student("姬昊余",80) s2=Student("吕倩倩",100) s1.say_score()
老师为什么我用self.count 运行之后显示只创建一个对象 但是我用Student.count就显示创建了两个对象
取余、求分子分母、三角函数的那些是怎么运算的啊
为什么会报错呢,怎样输入才能正确啊我看他报错说是要保证name的赋值,但是怎样做的呢
那个终端是什么意思,干什么用的?
为什么这段代码输出的是none a = ((,,)) random (random.shuffle(a)) (a.sort(=))
老师 辛苦你看看
def binary_search(li, left, right, val): mid = (left + right) // 2 while left <= right: if li[mid] < val: right = mid - 1 elif li[mid] > val: left = mid + 1 else: if li[mid + 1] == val: return [mid, mid + 1] elif li[mid - 1] == val: return [mid-1, mid] else: return [-1, -1] s'da's nums=[5,7,7,8,8,10]s target=8 print(binary_search(nums,0,len(nums)-1,target))
老师,我这个代码有什么问题?为什么执行不了
老师,如果遍历一次后指针在最后,那我可以用seek来回到起始点吗,这样是不是就可以再遍历一次了
import time
下面的两个timetime什么意思
跟老师的代码一直一致,但老报错
老师这里salary不是一个私有方法吗?那为什么可以像调用公开的属性那样调用?
print(emp1.salary)??????????
这个capitalize函数怎么当第一个单词前含非字母字符时就不起作用了?
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637