Python程序设计基础课后习题答案_第1页
Python程序设计基础课后习题答案_第2页
Python程序设计基础课后习题答案_第3页
Python程序设计基础课后习题答案_第4页
Python程序设计基础课后习题答案_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

第一章一、填空题机器语言、汇编语言解释可移植#4判断题1234正确正确正确错误单选题12345BBCBD四、简答题1.Python语言的优缺点有哪些?答:优点:1)简洁易读2)功能丰富3)跨平台性4)大量的库和框架5)多领域应用6)强大的社区支持2.Python语言可以进行哪些应用?答:应用领域包括:1)网络开发2)数据科学和机器学习3)自动化和脚本编程4)游戏开发5)科学计算和数据可视化6)AI和自然语言处理第二章一、填空题1.True和False2.type3.浮点4.15.变量6.整型7.1,08.十六进制。9.int10.811.实数虚数12.整型13.int()14.815.116.True17.False18.True19.3;220.5二、判断题12345正确错误错误正确正确678910错误正确错误正确正确1112131415正确错误错误正确正确三、单选题12345BAADB678910BBAAB1112131415DDDBD1617181920BBACB2122232425BCCBA四、简答题阅读以下程序,写出输出结果,并分析代码作用

side_one=10

side_two=5

area=side_one*side_two

perimeter=2*(side_one+side_two)

print('长方形的面积为:',area)

print('长方形的周长为:',perimeter)答:长方形的面积为:50长方形的周长为:30

求长方形的面积和周长综合运用前述知识,写一个简单的程序,要求用户输入两个数,计算它们的和并输出结果。答:a=int(input(‘pleaseinputaninteger:’)b=int(input(‘pleaseinputaninteger:’)sum=a+bprint(“a+b=”,sum)第三章填空题12345ifTrueFalseforwhileTrue6789forcontinueforjinrange(1,i+1):break判断题12345错误错误错误正确正确678910错误错误正确正确正确1112131415正确正确错误正确错误三、单选题12345DCBCC678910CBCAB1112131415DCADC1617181910ABDDD四、编程题1.#获取用户输入的数字num=float(input("请输入一个数字:"))#判断num的大小ifnum>0:print("你输入的数字是正数")elifnum==0:print("你输入的数字是零")else:print("你输入的数字是负数")2.#获取用户输入的数字num=int(input("请输入一个整数:"))#判断数字是否为奇数或偶数ifnum%2==0:print("你输入的数字是偶数")else:print("你输入的数字是奇数")3.#打印数字1到10foriinrange(1,11):#打印数字和星号,并使用end参数指定输出结束时不换行print(i,end='')print('*',end='')4.#设置用户名和密码username='Kate'password='666666'#记录输入的次数tries=0#使用循环来输入用户名和密码whiletries<3:#获取用户输入的用户名和密码input_username=input("请输入用户名:")input_password=input("请输入密码:")#判断用户名和密码是否正确ifinput_username==usernameandinput_password==password:print("登录成功!")breakelse:tries+=1print("用户名或密码错误,请重新输入!")#判断是否已经输入了3次用户名和密码iftries==3:print("3次用户名或者密码均有误!退出程序。")第四章填空题正向,反向列表元组list索引切片[1,2,3,[4][1,2,3,4][1,4,2,3append()、extend()、insert()0[5,3,2,1]。[elemforeleminliifelem>25][1,4,7]。remove()1[1,2,3,1,2,3,1,2,3]pop()-1319['y','h'][itemforiteminrange(100)ifitem%13==0][0,2,3]clear()Tuple不可变set无序性2discard(){1,2,3}互异性(不可重复性)add(x){1,2,3,4,5}{2,4}keys()values()dict元素冒号键值get{value:keyforkey,valueinold_dict.items()}字典(dict)94判断题12345正确错误正确正确错误678910正确正确正确错误正确1112131415错误错误错误正确正确单选题12345BADAA678910DBCDB1112131415ADDDD1617181920ACBCD2122232425DDCBD2627282930ADDBC3132333435BCABC3637383940DDDAB四、编程题1.创建一个列表,包含你最喜欢的五种水果。访问列表中的第三个水果,并将其打印出来。在列表的末尾添加一种新的水果,例如橙子。将列表第一个水果替换为葡萄。删除列表中的第二种水果。检查列表中是否包含香蕉,并将结果打印出来。使用循环遍历整个列表,并将每种水果打印出来。#创建包含五种水果的列表fruits=["苹果","香蕉","橙子","梨","草莓"]#访问列表中的第三个水果,并将其打印出来print("第三个水果是:",fruits[2])#在列表的末尾添加一种新的水果:橘子fruits.append("橘子")#将列表第一个水果替换为葡萄fruits[0]="葡萄"#删除列表中的第二种水果:香蕉delfruits[1]#检查列表中是否包含香蕉,并将结果打印出来if"香蕉"infruits:print("列表中包含香蕉")else:print("列表中不包含香蕉")#使用循环遍历整个列表,并将每种水果打印出来print("列表中的水果有:")forfruitinfruits:print(fruit)创建一个元组,包含你喜欢的五个国家。访问元组中的第三个国家,并将其打印出来。尝试修改元组中的一个元素,看看会发生什么。将元组中的两个国家合并成一个新的元组,并将其打印出来。检查元组中是否包含"China",并将结果打印出来。#创建包含五个国家的元组countries=("美国","英国","法国","德国","日本")#访问元组中的第三个国家,并将其打印出来print("第三个国家是:",countries[2])#尝试修改元组中的一个元素,看看会发生什么#错误示例:countries[0]="中国"#错误示例:delcountries[0]#将元组中的两个国家合并成一个新的元组,并将其打印出来new_countries=countries+("中国","韩国")print("合并后的新元组为:",new_countries)#检查元组中是否包含"中国",并将结果打印出来if"中国"innew_countries:print("新元组中包含中国")else:print("新元组中不包含中国")创建一个字典,包含你的朋友的姓名和他们的年龄。访问字典中的一个朋友的年龄,并将其打印出来。向字典中添加一个新的朋友和他们的年龄。更新字典中一个朋友的年龄。删除字典中的一个朋友。检查字典中是否包含某个朋友,并将结果打印出来。使用循环遍历字典,并将每个朋友的姓名和年龄打印出来。#创建包含朋友姓名和年龄的字典friends={"小明":20,"小红":22,"小刚":25}#访问字典中的一个朋友的年龄,并将其打印出来print("小红的年龄是:",friends["小红"])#向字典中添加一个新的朋友和他们的年龄friends["小亮"]=18#更新字典中一个朋友的年龄friends["小红"]=23#删除字典中的一个朋友delfriends["小刚"]#检查字典中是否包含某个朋友,并将结果打印出来if"小刚"infriends:print("字典中包含小刚")else:print("字典中不包含小刚")#使用循环遍历字典,并将每个朋友的姓名和年龄打印出来print("字典中的朋友有:")forname,ageinfriends.items():print(name,"的年龄是:",age)第五章填空题单引号退格%format()f-string浮点join+-1titlecapitalize'hello:world''heggpworgd''Thefirst:97,thesecondis65'Lstripsplit判断题12345错误正确正确正确错误678910错误错误正确正确错误1112131415错误正确正确正确正确161718正确正确错误单选题12345CDDCD678910BBCBA1112131415ACCBC1617181920BDACC四、编程题1.编写一个函数count_vowels,接受一个字符串作为参数,并返回该字符串中元音字母的数量。#获取用户输入的字符串string=input("请输入一个字符串:")#统计字符串中元音字母的数量vowel_count=0forcharinstring:ifchar.lower()in"aeiou":vowel_count+=1#打印结果print("元音字母的数量为:",vowel_count)编写一个程序,接收用户输入的一个字符串,然后去除该字符串中重复的字符,并打印出来。例如,输入为"hello",输出为"helo"。#获取用户输入的字符串string=input("请输入一个字符串:")#去除字符串中重复的字符unique_chars=""forcharinstring:ifcharnotinunique_chars:unique_chars+=char#打印结果print("去除重复字符后的字符串为:",unique_chars)编写一个程序,接收用户输入的一个字符串,然后将该字符串中每个单词都反转,并打印出来。例如,输入为"helloworld",输出为"ollehdlrow"。#获取用户输入的字符串string=input("请输入一个字符串:")#将字符串中每个单词都反转words=string.split()reversed_words=[word[::-1]forwordinwords]#打印结果print("反转后的字符串为:","".join(reversed_words))编写一个程序,接收用户输入的一个字符串,然后将该字符串中的大写字母转换为小写字母,小写字母转换为大写字母,并打印出来。例如,输入为"HelloWorld",输出为"hELLOwORLD"。#获取用户输入的字符串string=input("请输入一个字符串:")#将字符串中的大写字母转换为小写字母,小写字母转换为大写字母result=""forcharinstring:ifchar.islower():result+=char.upper()elifchar.isupper():result+=char.lower()else:result+=char#打印结果print("转换后的字符串为:",result)第六章填空题函数def10NoneGlobal外8函数名递归函数包判断题12345正确正确错误正确错误678910正确正确正确错误正确1112131415正确错误正确错误错误1617181920正确正确正确正确错误2122232425正确正确正确正确错误三单选题12345DABCC678910BDDDD1112131415CDCBC1617181920BBCDB2122232425DDABB2627282930BCCBC313233CDC编程题defcompute(s):

num_dict={'0':'零','1':'一','2':'二','3':'三','4':'四','5':'五','6':'六','7':'七','8':'八','9':'九'}

new_s=''

foriins:

ifnum_dict.get(i,-1)==-1:

new_s+=i

else:

new_s+=num_dict[i]

returnnew_s

print(compute('09#88!77*'))defcompute(lst):

k1=len(lst)

k2=len(set(lst))

ifk2==1:

return0

elifk1==k2:

return1

elifk2<k1:

return2

print(compute([1,3,2,4]))defcompute(s):

new_s=''

foriins:

ifi.isalpha():

new_s+=i

returnnew_s

print(compute('a1b$cd9e=fg'))defcompute(s):

max_num=0

max_char=''

foriins:

ifs.count(i)>max_num:

max_num=s.count(i)

max_char=i

return(max_char,max_num)

print(compute('abbccdddeeee'))defcompute(n,a):

sum=0

i=1

whilei<=n:

sum+=int(str(a)*i)

i+=1

returnsum

print(compute(4,2))第七章填空题文本文件二进制文件文件路径文件名主干访问文件/读或写文件read()readlines()write()writelines()tell()seek()os.sys.platform异常(Exception)二、简答题(略)第八章一、填空题1.类对象2.属性方法3.双下划线4.self5.MyClass6.构造方法为__init__()7.析构方法8.封装9.单继承多继承10.多态二、选择题CAADA三、编程题(仅供参考)importmathclassCircle:def__init__(self,radius):self.radius=radiusdefcalc_area(self):area=math.pi*self.radius**2returnareadefcalc_perimeter(self):perimeter=2*math.pi*self.radiusreturnperimeter#调用circle=Circle(5)area=circle.calc_area()perimeter=circle.calc_perimeter()print("圆的面积为:",area)print("圆的周长为:",perimeter)运行代码输出结果如下所示:圆的面积为:78.53981633974483圆的周长为:31.415926535897932.classStudent:def__init__(self,name,score):=nameself.score=scoredefget_name(self):print()defget_course(self):print(max(self.score))zhangsan=Student('张三',[69,88,100])zhangsan.get_name()zhangsan.get_course()3.classCar:

def__init__(self,color,speed,type):

self.color=color

self.speed=speed

self.type=type

defmove(self):

print("汽车开动了!")c1=Car('red',300,'BMW')print('汽车型号是%s'%c1.type)print('汽车颜色是%s'%c1.color)print('汽车马力是%d'%c1.speed)c1.move()第九章编写一个正则表达式,匹配所有由数字和字母组成、长度为8-10位的字符串。答:^[a-zA-Z0-9]{8,10}$编写一个正则表达式,匹配所有以abc开头的字符串(大小写不区分)。答:^abc编写一个正则表达式,匹配所有包含至少一个数字和至少一个小写字母的字符串。答:^(?=.*\d)(?=.*[a-z]).*$这个正则表达式的含义是:^表示字符串的开始。(?=.*\d)表示至少一个数字。(?=.*[a-z])表示至少一个小写字母。.*表示任意字符零次或多次。$表示字符串的结束。编写一个正则表达式,匹配所有标准的电子邮件地址(包括用户名、域名和顶级域名,如“example@”)。答:^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$这个正则表达式的含义是:^表示字符串的开始。[a-zA-Z0-9._%+-]+表示用户名,可以包含字母、数字、下划线、百分号、加号和减号。@表示电子邮件地址的分隔符。[a-zA-Z0-9.-]+表示域名,可以包含字母、数字、点和减号。\.表示顶级域名的分隔符。[a-zA-Z]{2,}表示顶级域名,必须包含至少两个字母。$表示字符串的结束。编写一个Python程序,读取一个包含多行字符串的文本文件,使用正则表达式匹配其中所有的日期(格式为“YYYY-MM-DD”),并将其打印出来。请使用Python的文件读写相关函数来实现文本文件的读取和保存。答:importre#读取文本文件withopen('example.txt','r')asfile:text=file.read()#匹配日期pattern=r'\b\d{4}-\d{2}-\d{2}\b'dates=re.findall(pattern,text)#打印匹配的日期fordateindates:print(date)编写一个Python程序,读取一个包含多行字符串的文本文件,使用正则表达式匹配其中所有的URL,将其替换为可点击的超链

温馨提示

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

评论

0/150

提交评论