Python面向对象程序设计基础杨薇课后参考答案_第1页
Python面向对象程序设计基础杨薇课后参考答案_第2页
Python面向对象程序设计基础杨薇课后参考答案_第3页
Python面向对象程序设计基础杨薇课后参考答案_第4页
Python面向对象程序设计基础杨薇课后参考答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.到Python官方网站下载并安装Python解释器环境。2.到Anaconda官方网站下载并安装最新的Anaconda3开发环境。3.Python语言是一种解释型、面向对象的计算机程序设计语言。4.Python注释以符号#开始,到行尾结束。Python采用的是基于值的内存管理方式,如果为不同变量赋值相同值,则在内存中只有一份该值,多个变量指向同一块内存地址id()在Python中/表示普通除法(也叫真除法),结果是实数,而//表示整除,得到的结果是整数,并且自动向下取整。x=input('请输入3位以上的数字:')iflen(x)>=3: x=int(x) print('结果是:',x//100)else: print('输入错误!')x=input("inputanumber:")a,b,c=map(int,x)print("resultis:{0}\t{1}\t{2}".format(a,b,c))sum()True19False(True,5)True551:2:314.x=input("inputthreenumbers:")a,b,c=map(int,x.split())print("sortedresultis:",sorted((a,b,c)))1.x=input("inputainteger:")y=int(x)print(chr(y))2.x=input("inputadecimalnumber:")print(bin(int(x)))print(oct(int(x)))print(hex(int(x)))A 2.D 3.C 4.D 5.C6.name=input("请输入你的名字:")place=input("请输入你经常去的地方:")like=input("请输入你平时的爱好:")print('可爱的',name,',','最喜欢在',place,'地方进行',like)或者:test="可爱的{0},最喜欢在{1}地方进行{2}"name=input("请输入你的名字:")place=input("请输入你经常去的地方:")like=input("请输入你平时的爱好:")v=test.format(name,place,like)print(v)7.strr=input("请输入一个待统计的字符串:")space_number=0#space_number变量用于存储“空格”个数foriinstrr:#循环遍历strr字符串ifi.isspace():#判断是否为“空格”space_number+=1#“空格”个数加1print("字符串中的空格个数为:",space_number)1.importrandomx=[random.randint(0,200)foriinrange(100)]#第一种实现:使用集合s=set(x)forvins: print(v,':',x.count(v))#第二种实现:使用字典d=dict()forvinx: d[v]=d.get(v,0)+1fork,vind.items(): print(k,v,sep=':')2.x=input("inputalist:")x=eval(x)p=input("inputtwopositon:")begin,end=map(int,p.split())print(x[begin:end+1])t=[6foriinrange(10)]foriint:print(i)4.importrandomx=[random.randint(0,100)foriinrange(20)]print(x)x[:10]=sorted(x[:10])x[10:]=sorted(x[10:],reverse=True)print(x)5.[]6.[18,19]7.([1,3],[2])8.当列表增加或删除元素时,列表对象自动进行内存扩展或收缩,从而保证元素之间没有缝隙,但这涉及到列表元素的移动,效率较低,应尽量从列表尾部进行元素的增加与删除操作以提高处理速度。9.[1,2,3,1,2,3,1,2,3]10.['1','2','3']Continue、breakwhileCB5.x=input('Pleaseinputaninteger:')x=int(x)ifx%2==0: print("{:d}is偶数!".format(x))else: print("{:d}is奇数!".format(x))6.x=input('Pleaseinputanintegerlessthan1000:')x=eval(x)t=xi=2result=[]whileTrue: ift==1: break ift%i==0: result.append(i) t=t//ielse: i+=1print(x,'=','*'.join(map(str,result)))1.importmathdefIsPrime(v): n=int(math.sqrt(v)+1) foriinrange(2,n): ifv%i==0: return'No' else: return'Yes'print(IsPrime(17))print(IsPrime(30))print(IsPrime(813))2.defdemo(v): capital,little,digit,other=(0,)*4 #或者capital=little=digit=other=0 foriinv: if'A'<=i<='Z': capital+=1 elif'a'<=i<='z': little+=1 elif'0'<=i<='9': digit+=1 else: other+=1return(capital,little,digit,other)x='PEP498,formattedstringliterals.'print(demo(x))3.会。defdemo(): a=3 print(a)a=5demo()4.defmySum(data): sum=0 fordindata: sum+=d returnsum5.defmySorted(lst,reverse=False): lst=lst[:] length=len(lst) foriinrange(0,length-1): forjinrange(i+1,length): #比较相邻两个元素大小,并根据需要进行交换 #默认升序排序 exp='lst[i]>lst[j]' #如果reverse=True则降序排序 ifreverse: exp='lst[i]<lst[j]' ifeval(exp): lst[i],lst[j]=lst[j],lst[i] returnlst-2

defdemo(*v): print(max(v))print(sum(v))deff(n):a=b=c=1foriinrange(n-3):c,b,a=a+b+c,c,breturnc1.C2.A3.D5.5.利用多态特性,编程创建一个手机类phones,定义打电话方法call()。创建手机类的两个子类:苹果手机类IPhone和Android手机类APhone,并在各自类中重写方法call()。创建一个人类Person,定义使用手机打电话的方法use_phone_call()。classphones():defcall(self):print("打电话")classIPhone(phones):defcall(self):print("我用苹果手机打电话")classAndroid(phones):defcall(self):print("我用安卓手机打电话")classPerson(object):defuse_phone_call(self,phone):phone.call()p=Person()p.use_phone_call(IPhone())p.use_phone_call(Android())C2.A3.D4.B5.A6.try:score=int(input("请输入学生的成绩:"))ifscore>=90andscore<=100:print("A:优秀")elifscore>=80andscore<90:print("B:良好")elifscore>=60andscore<80:print("C:合格")else:assertscore>60,"D:不及格"exceptExceptionasresult:print("低于60分:\n",result)7.classmy_error(Exception):def__init__(self,stri):self.leng=len(stri)defprocess(self):ifself.leng<5:return'Theinputisoflength%s,expectingatleast5'%self.lengelse:return'printsuccess'try:s=input("请输入字符串:")raisemy_error(s)exceptmy_errorase:print(cess())C 2.D 3.D 4.A 5.B6.oldFileName=input("请输入要拷贝的文件名字:")oldFile=open(oldFileName,'r')ifoldFile:#提取文件的后缀fileFlagNum=oldFileName.rfind('.')iffileFlagNum>0:fileFlag=oldFileName[fileFlagNum:]#组织新的文件名newFileName=oldFileName[:fileFlagNum]+'[复件]'+fileFlag#创建新文件newFile=open(newFileName,'w')#把旧文件中的数据复制到新文件中forlineContentinoldFile.readlines():newFile.write(lineContent)#关闭文件oldFile.close()newFile.close()7.importosimportsyssys.setrecursionlimit(1000)#setthemaximumdepthas1500file_path=input('请输入待查找的目录:')file_name=input('请输入待查找的文件:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论