版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实践问题3答案
实践问题3.1的答案(针对本书3.1-3.3节内容)
1.Python语言中,对象的类型和内存占用都是运行时确定的。Python是一种解释型
语言,在创建一一也就是赋值时,解释器会根据语法和右侧的操作数来决定新对象的类型,
在对象创建后,一个该对象的应用就会赋值给左侧的变量。
2.areais11.0
3.有效标识符:miles,Test,apps,x,y,radius
效标识符:a+b,b-a,4#R,$4,#44,if,elif
关键字:if,elif
4.value=eval(input("请输入一个数:”))
5.print(int(value))4
print(round(value))5
print(eval(n4*5+2”))22
print(int(n04"))4
print(int(n4.5M))错误
print(eval(n04n))错误
实践问题3.2的答案(针对本书3.4节内容)
6.44,乘法运算优先于加法运算。
7.第一个赋值语句将变量value2的值赋给了变量value1,而第二个赋值语句将变量
value]的值赋给了value2.
8.25/4=6.25,如果想让结果为整数的话用25〃4
9.4.0/(3.0*(r+34))-9*(a+b*c)+(3.0+d*(2+a))/(a+b*d)
10.a+=4(a=5)
a-=4(a=-3)
a*=4(a=4)
a/=4(a=0.25)
a//=4(a=0)
a%=4(a=1)
a=56*a+6(a=62)
实践问题3.3的答案(针对本书3.5节内容)
11.code=ord('1')
code=ord('A')
code=ord('B*)
code=ord('a')
code=ord('b')
ch=chr(40)
ch=chr(59)
ch=chr(79)
ch=chr(85)
ch=chr(90)
12.D
13.title="Chapter"+str(3)
14.7
25
15.答案如下表:
a.s1==s2True1.4*s4totototo
b.s2.count('o')3m.len(si)17
c.id(si)==id(s2)Truen.max(si)y
d.id(si)==id(s3)Falseo.min(si)aspacechar
e.si<=s4TrueP-si[-4]t
f.s2>=s4Falseq・si・lower()welcometopython
g.si!=s4Truer.si・rfind('o*)15
h.si.upper()WELCOMETO1s.si.startswith(nWelcoH)True
i.si.find(s4)8t.si.endswith("on*')True
j.sl[4]ou.si.isalpha()False
k.si[4:8]omeV.si+s2
16.除了s3=si-s2不对之外,其它都是对的。
17.WelcometoPython
WelcabcmetabcPythabcn
18.答案如下:
(1)isEqual=(si==s2)(2)isEqual=(si.upper。==s2.upper())
(3)b=s1.startswith(nAAAu)(4)b=si.endswith(MAAAn)
(5)x=len(sl)(6)x=sl[0]
(7)s3=sl+s2(8)s3=sl[l:]
(9)s3=sl[l:5](10)s3=sl.lower()
(11)s3=sl.upper()(12)s3=sl.stripO
(13)s3=sl.replace('e\K)(14)x=slfnd('e')
(15)x=sl.rfind('abc')
19.firstandsecond
20.Asknotwhatyourcountrycandoforyou,askwhatyoucandoforyourcountry
21.输出如下:
54.70
5.47e+01
6789.30
0.457
36
22.输出如下:
Programmingisfun
Programmingisfun
Programmingisfun
23.A[A-Za-zO-9]+$
24.输入只能是汉字的表达式:A[\u4e00-\u9fa5]{0,}$
25./A\d{l}[\w|_|\d]{4,19)$/
实践问题3.4的答案(针对本书3.6节内容)
26.输出结果如下:
[xforxinlistlifx>1]=>[30,2]
[xforxinrange(0^10,2)]=>[0,2,4,6,8]
[xforxinrange(10>0,-2)]=>[10,8,6,4,2]
27.输出结果如下:
listlis[22,43]
list2is[1,43]
28.输出结果如下:
[1,1,1,1,1,1]
29.输出结果如下:
[111,3,5,7,9]
[1,3,5,7,9]
30.输出结果如下:
[[2,1,1]>[1>1,1],[1,1,1]]
31.不能向元组添加元素,不能从元组中删除元素,也不能替换元组中的元素。
32.(1,2,3,7,9,0,5)
1
(2,3)
5
(1,2,3,7,9,0)
(2,3,7,9,0)
实践问题3.5的答案(针对本书3.7节内容)
33.s={1,3,4}#正确
s={{1,2},{4,5}}#错误,因为集合不能包括集合{1,2},{3,4}
s={[1,2],[4,5]}#错误,因为集合不能包括列表[1,21,[4,5]
s={(1,2),(4,5))#正确,集合可以包括元组(1,2),(4,5)
34.集合类似于存储项目集合的列表。与列表不同,集合中的元素是唯一的,不会以任
何特定的顺序放置。要从列表创建集合,请使用set(list)。要从集合创建列表,请使
用list(set)o
35.输出结果:46116
实践问题3.6的答案(针对本书3.8节内容)
36.第二行错误
37.被称作键值对。
38.输出结果:4
39.tuple元组,固定长度不可变的顺序容器,访问效率高,是和存储一些常量数据,可
以作为字典的键使用。
list列表,是长度可变有序的数据存储容器,。可以通过下标索引取到相应的数据。
diet字典,长度可变的hash字典容器。存储的方式为键值对,可以通过相应的键获取
相应的值,key支持多种类型。
习题3答案
习题3.1答案(针对本书3.4节内容)
1.合法:fOrM_1024不合法:years.2018wall&Door1040Bytesexpensive?
INCOME2018
2.2014161698
3.18
4.1012
5.300
6.4016
7.结果如下:
表达式结果表达式结果
int(-b/2)-3abs(a-3))0
int(a*0.5)1round(b/a)1
abs(4-b)1round(b+0.5)6
8.答案如下:
l)price*=0.82)sum/=23)count%=2
4)cost+=105)seconds-=106)num//=6
9.代码如下:
pounds=eval(input("Enteranumberinpounds:"))
kilograms=pounds*0.454;
print(poundsj"poundsis”,kilograms,"kilograms")
10.代码如下:
#Readanumber
number=eval(input(nEnteranintegerbetween0and1000:"))
lastDigit=number%10
remainingNumber=number//10
secondLastDigit=remainingNumber%10
remainingNumber=remainingNumber//10
thirdLastDigit=remainingNumber%10
#0btainthesumofalldigits
sum=lastDigit+secondLastDigit+thirdLastDigit
#Displayresults
print("Thesumofalldigitsin”,number,"is",sum)
11.代码如下:
importmath
side=eval(input(HEntertheside:*'))
#Computethearea
area=5*side*side/math.tan(math.pi/5)/4
print("Theareaofthepentagonis”,area)
12.代码如下:
totalMinutes=eval(input("Enterthenumberofminutes:"))
totalHours=totalMinutes//60
remainingMinutes=totalMinutes%60
totalDays=totalHours//24
remainingHours=totalHours%24
totalYears=totalDays//365
remainingDays=totalDays%365
print("1000000000minutesisapproximately",totalYears"yearsand"
remainingDays,"days")
习题3.2答案(针对本书3.5节内容)
13.one,two,three
14.a)'o'b)'h'c)'Pyt'd)'Py'e)'h'f)'th'g)'Python'
h)2i)-1j)2k)'BALLCOURSE,1)6
m)'TheBook'n)-1o)4p)3
15.a)s[:-1]
b)s[2:]
16.输出结果如下:
$12,345.68
12,346
1.23
$12,345.00
17.输出结果如下:
planfirst,codelater
abcAAAabc
18.A[a-zA-Z]\w{7,10}$
19.代码如下:
##Wordreplacement.
sentence=input("Enterasentence:")
wordl=input("Enterwordtoreplace:")
word2=input("Enterreplacementword:")
location=sentence.find(wordl)
newSentence=sentence[:location]+word2+sentence[location+len(wordl):]
print(newSentence)
20.代码如下:
#PrompttheusertoenteradegreeinCelsius
code=eval(input("EnteranASCIIcode:"))
#Displayresult
print(*'ThecharacterforASCIIcode",code,"is”,chr(code))
21.代码如下:
defmain():
first=input("Enterthefirststring:").strip()
second=input("Enterthesecondstring:").strip()
ifisSubstring(first>second)!=-1:
print(first+"isasubstringof"+second)
else:
print(first+"isnotasubstringof"+second)
#Checkifthefirststringisasubstringofthesecondstring
defisSubstring(firstssecond):
remainingLength=len(second)
startingindex=0;
whilelen(first)<=remainingLength:
iffirst!=second[startingindex:startingindex+len(first)]:
startingindex+=1
remainingLength-=1
else:
returnstartingindex
return-1
main()
22.代码如下:
defmain():
s=input("Enterabinarynumberstring:").strip(),upper()
print("Thedecimalvalueis"+str(binaryToDecimal(s)))
defbinaryToDecimal(binarystring):
value=ord(binanyString[0])-ord('0')
foriinrange(l,len(binaryString)):
value=value*2+ord(binarystring[i])-ord('0')
returnvalue;
main()
23.代码如下:
defmain():
value=eval(input("Enteraninteger:"))
print("Thebinaryvalueis"+str(decimalToBinary(value)))
defdecimalToBinary(value):
result=""
whilevalue!=0:
bit=value%2;
result=str(bit)+result
value=value//2
returnresult
main()
24.代码如下
defmain():
printChars('l',Z,10)
defprintCharsCchl^ch2,numberPerLine):
count=1
foriinrange(ord(chl),ord(ch2)+1):
ifcount%numberPerLine==0:
print(chr(i))
else:
print(chr(i),end="")
count+=1
main()
25.代码如下:
defformat(number,width):
result=str(number)
foriinrange⑶width-len(number)):
result="0"+result
returnresult
deflen(number):
size=0
whilenumber>0:
size+=1
number=number//10
returnsize
defmain():
number=eval(input("Enteraninteger:"))
width=eval(input("Enterthewidth:"))
print("Theformattednumberis",format(number,width))
main()#Callthemainfunction
26.代码如下:
sentence=input("Enterasentence:")
L=sentence.split("")
print("Numberofwords:",len(L))
27.代码如下:
sentence=input("Enterasentence:")
L=sentence.split()
print("Firstword:",L[0])
print("Lastword:",L[-l][:-l])
习题3.3答案(针对本书3.6节内容)
28.lst.append(40)=>[30,1,2,1,0,40]
Ist.insertCl,43)=>[30,43,1,2,1,0]
lst.extend([l,43])=>[30,1,2,1,0,1,43]
1st.remove(1)=>[30,20]
Ist.pop(l)=>[30,2)10]
lst.pop()=>[30,1,2,1]
lst.sort()=>[0,1,1,2,30]
1st.reverse()=>[0,1,2,1,30]
random.shuffle(list)=>listisrandomlyshuffled
29.[Ill,3,5,7,9]
[111,3,5,7,9]
20.代码如下:
defmain():
s=input("Enternumbersseparatedbyspacesfromoneline:")
items=s.split()
numbers=[eval(x)forxinitems]
numbers.reverse()
print(numbers)
main()
31.代码如下:
defmain():
s=input("Enternumbersseparatedbyspacesfromoneline:")
items=s.split()
numbers=[eval(x)forxinitems]
numbers.reverse()
print(numbers)
main()
32.代码如下:
defmain():
s=input("Enterscoresseparatedbyspacesfromoneline:")
items=s.split()
numbers=[eval(x)forxinitems]
print("Theindexofthesmallestelementis”,indexOfSmallestElement(numbers))
defindexOfSmallestElement(list):
min=list[0]
minindex=0
foriinrange(l4len(list)):
ifmin>list[i]:
min=list[i]
minindex=i
returnminindex
main()
33.代码如下:
defmain():
s=input("Enterlistl:")
items=s.split()
listl=[eval(x)forxinitems]
s=input("Enterlist2:")
items=s.split()
list2=[eval(x)forxinitems]
list3=mergeClistljlist2);
print("Themergedlistis”,end=*'")
foreinlist3:
print(e,end="")
defmerge(listljlist2):
result=[]
currentl=0
current2=0
whilecurrentl<len(listl)andcurrent2len(list2):
iflistl[currentl]<Iist2[current2]:
result.append(list1[currentl])
currentl+=1
else:
result.append(list2[current2])
current2+=1
whilecurrentl<len(listl):
result.append(listl[currentl])
currentl+=1
whilecurrent2<len(list2):
result.append(Iist2[current2])
current2+=1
returnresult
main()
34.代码如下:
importrandom
defmain():
n=6
matrix=[]
foriinrange(n):
matrix.append([])
forjinrange(n):
matrixfi].append(random.randint(0,1))
print(matrix[i][j]?end="")
print()
ifisEvenParity(matrix):
print("Allrowsandcolumnsareeven")
else:
print("Notallrowsandcolumnsareeven")
defisEvenParity(matrix):
foriinrange(len(matrix)):
sum=0
forjinrange(len(matrix[i])):
sum+=matrix[i][j]
ifsum%2!=0:
returnFalse
forjinrange(len(matrix[0])):
sum=0
foriinrange(len(matrix)):
sum+=matrix[i][j]
ifsum%2!=0:
returnFalse
returnTrue
main()
35.代码如下:
defmain():
SIZE=3
print("Entera3by3matrixrowbyrow:")
m=[]
foriinrange(SIZE):
line=input().split()
m.append([eval(x)forxinline])
print("Therow-sortedlistis")
printMatrix(sortRows(m))
defprintMatrix(m):
foriinrange(len(m)):
forjinrange(len(m[i])):
print(m[i][j],end="")
print()
defsortRows(m):
result=[]
forrowinm:
result.append(row)
forrowinresult:
row.sort()
returnresult
main()
习题3.4答案(针对本书3.7节内容)
36.输出如下:
{1,2,3){3,4,5}{1,2,3,4,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二四年物流设备采购合同2篇
- 贷款经销合同范本
- 2024年度电子商务专业人才培养与交流合同2篇
- 2024年度泰州住宅物业买卖合同++合同争议解决方式2篇
- 法国婚前合同范本
- 注册公司的房屋租赁合同
- 居间服务费的合同
- 2024年度二手汽车买卖合同及其附属条款3篇
- 空调购销合同范本
- 建筑工程地面维修施工合同(04版)2篇
- 社区与社区工作者
- DB32∕T 3921-2020 居住建筑浮筑楼板保温隔声工程技术规程
- 肺部真菌感染的影像学特征知识
- 怎样做好工作计划
- 合同管理的法律风险及审核实务图文PPT演示
- 物业纠纷民事上诉状
- 教科版小学五年级科学上册导学案
- 消防监督检查记录
- fikusvisualcam线切割编程中文教程
- 中国地图(可拆分省份)
- 全国主要水文站点及雨量观测分布和代码
评论
0/150
提交评论