Python课后题答案0305.docx

上传人:b****1 文档编号:2092986 上传时间:2023-05-02 格式:DOCX 页数:42 大小:25KB
下载 相关 举报
Python课后题答案0305.docx_第1页
第1页 / 共42页
Python课后题答案0305.docx_第2页
第2页 / 共42页
Python课后题答案0305.docx_第3页
第3页 / 共42页
Python课后题答案0305.docx_第4页
第4页 / 共42页
Python课后题答案0305.docx_第5页
第5页 / 共42页
Python课后题答案0305.docx_第6页
第6页 / 共42页
Python课后题答案0305.docx_第7页
第7页 / 共42页
Python课后题答案0305.docx_第8页
第8页 / 共42页
Python课后题答案0305.docx_第9页
第9页 / 共42页
Python课后题答案0305.docx_第10页
第10页 / 共42页
Python课后题答案0305.docx_第11页
第11页 / 共42页
Python课后题答案0305.docx_第12页
第12页 / 共42页
Python课后题答案0305.docx_第13页
第13页 / 共42页
Python课后题答案0305.docx_第14页
第14页 / 共42页
Python课后题答案0305.docx_第15页
第15页 / 共42页
Python课后题答案0305.docx_第16页
第16页 / 共42页
Python课后题答案0305.docx_第17页
第17页 / 共42页
Python课后题答案0305.docx_第18页
第18页 / 共42页
Python课后题答案0305.docx_第19页
第19页 / 共42页
Python课后题答案0305.docx_第20页
第20页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Python课后题答案0305.docx

《Python课后题答案0305.docx》由会员分享,可在线阅读,更多相关《Python课后题答案0305.docx(42页珍藏版)》请在冰点文库上搜索。

Python课后题答案0305.docx

Python课后题答案0305

《Python课后题答案-20180305》

摘要:

(all([len(a[i])==len(b[i])==len(a[0])foriinrange(len(a))])),cbandb+ca):

,0)and(greater%y==0)):

Python课后题答案

第1章Python概述

一、填空题

1.对象

2.可移植

3.字节码

4.UTF-8

二、判断题

1.对

2.对

3.对

4.对

5.错

6.错

7.对

8.错

9.对

10.错

三、选择题

1.C

2.ABCD

3.B

4.C

5.D

四、简答题。

1.Python具有的特点如下:

l简单易学

l开源

l高级语言

l可移植性

l解释性

l面向对象

l可扩展性

l丰富的库

l规范的代码

2.Python可以应用在下列领域:

lweb应用开发

l操作系统管理、服务器运维的自动化脚本

l科学计算

l桌面软件

l服务器软件(网络软件)

l游戏

l构思实现,产品早期原型和迭代

3.Python2.x和Python3.x的区别如下:

(1)在python2.x中,输出数据使用的是print语句。

但是在python3.x中,print语句没有了,取而代之的是print()函数

(2)python2有ASCIIStr()类型,unicode()是单独的,不是byte类型。

在python3.x版本的源代码中,默认使用的是UTF-8编码,从而可以很好的支持中文字符。

(3)在python2.x中,使用运算符/进行除法运算,整数相除的结果是一个整数,浮点数除法会保留小数点的部分得到一个浮点数的结果。

在python3.x中使用运算符/进行除法,整数之间的相除,结果也会是浮点数。

(4)相比python2.x版本,python3.x版本在异常方面有很多改变:

§在python2.x版本,所有类型的对象都是直接被抛出的,但是,在python3.x版本中,只有继承自BaseException的对象才可以被抛出。

§在python2.x版本中,捕获异常的语法是exceptexc,var。

在python3.x版本中,引入了as关键字,捕获异常的语法变更为exceptexcasvar。

§在python2.x版本中,处理异常使用raiseException(args)。

在python3.x版本中,处理异常使用raiseException,args。

§python3.x取消了异常类的序列行为和.message属性。

(5)在Python3.x中,表示八进制字面量的方式只有一种,并且必须写0o1000这样的方式,原来01000的方式不能使用了。

(6)Python2.x中不等于有两种写法!

=和;但是,Python3.x中去掉了,只有!

=一种写法

(7)python3.x去除了long类型,现在只有一种整型int,但它的行为就像是python2.x版本的long。

4.Python程序的执行原理如图所示。

python解释器将源代码转换为字节码,然后把编译好的字节码转发到Python虚拟机(PVM)中进行执行

5.IPython的特点如下:

lIPython具有卓越的Pythonshell,其性能远远优于标准Python的shell。

lIPython支持变量自动补全,自动缩进,支持bashshell命令,内置了许多很有用的功能和函数。

lIPython提供了基于控制台命令环境的定制功能,可以十分轻松地将交互式Pythonshell包含在各种Python应用中,甚至可以当作系统级shell来使用。

五、编程题。

1.代码如下:

print("+++++++++++")

print("+

+")

print("+++++++++++")

2.

代码如下:

print("学Python,来传智播客黑马程序员")

print("学Python,来传智播客黑马程序员")

print("学Python,来传智播客黑马程序员")

print("学Python,来传智播客黑马程序员")

print("学Python,来传智播客黑马程序员")

第2章Python基本语法

一、填空题

1.int

2.True

False

3.8

4.1.2e5

5.00000010

6.0b10100

7.type()

8.1

9.20

10.4.34×103

二、判断题

1.对

2.错

3.对

4.对

5.错

6.错

7.对

8.对

9.对

10.对

三、选择题

1.D

2.D

3.A

4.A

5.C

6.A

7.B

8.B

9.C

10.D

四、简答题

1.Python中标识符的命名规则如下所示:

l标示符由字母、下划线和数字组成,且数字不能开头

lpython中的标识符是区分大小写的。

lpython中的标示符不能使用关键字

2.简述Python中的数字类型有:

int(整型)、long(长整型)、float(浮点数)、complex(复数)

五、编程题

1.代码如下:

importmath

a=float(input("请输入斜边1的长度"))#输入实数

b=float(input("请输入斜边2的长度"))#输入实数

c=a*a+b*b#计算,得到的是斜边的平方

c=sqrt(c)#开方,得到的是斜边长

print("斜边长为:

",c)#显示,一项是字符串,一项是c表示的斜边长

2.代码如下:

#用户输入

x=input('输入x值:

')

y=input('输入y值:

')

#不使用临时变量

x,y=y,x

print('交换后x的值为:

{}'.format(x))

print('交换后y的值为:

{}'.format(y))

第3章Python常用语句

一、填空题

1.break

2.elif

3.continue

4.True

5.pass

二、判断题

1.错

2.对

3.对

4.对

5.对

三、选择题

1.C

2.C

3.C

4.C

5.D

四、简答题

1.Pass语句Python中的pass是空语句,它的出现是为了保持程序结构的完整性。

pass不做任何事情,一般用做占位语句。

2.break语句用于结束整个循环;continue的作用是用来结束本次循环,紧接着执行下一次的循环。

五、编程题

1.代码如下:

foriinrange(1,11):

print(i)

2.代码如下:

a=int(input("请输入一个数:

"))

ifa0:

print("a是一个正数")

elifa0:

print("a是一个负数")

else:

print("a等于0")

3.代码如下:

i=1

whilei10:

j=1

whilej=i:

print("%d*%d=%-2d"%(i,j,i*j),end='')

j+=1

print("\n")

i+=1

第4章字符串

一、单选题

1.A

2.D

3.B

4.C

5.C

6.B

7.A

二、判断题

1.对

2.对

3.错

4.对

5.错

6.错

7.错

三、填空题

1.文本

2.转义

3.input

4.切片

5.开

四、程序分析题

1.答:

不能编译通过。

因为num1和num2属于字符串类型,不能执行取余操作。

2.结果为:

J

3.答:

由于没有在字符串中找到子串,index方法默认会抛出ValueError异常。

4.结果为:

HelloWorld(默认删除两头的空格)

5.结果为:

HelloPython

五、编程题

1.答案:

myStr=input("请输入任意字符串:

")

num=0

forsinmyStr:

ifs.isdigit():

num+=1

print(num)

2.答案:

week=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']

whileTrue:

myStr=input("请输入任意一个字母:

")

upMyStr=myStr.upper()

forweekSinweek:

ifupMyStr==weekS[0]:

ifweekS.startswith("M"):

print("星期一")

elifweekS.startswith("W"):

print("星期三")

elifweekS.startswith("F"):

print("星期五")

elifweekS.startswith("T")orweekS.startswith("S"):

secondStr=input("请再输入任意一个字母:

")

newStr=upMyStr+secondStr

print(newStr)

forweekStrinweek:

ifweekStr.find(newStr,0,2)!

=-1:

ifnewStr=="Tu":

print("星期二")

elifnewStr=="Th":

print("星期四")

elifnewStr=="Sa":

print("星期六")

elifnewStr=="Su":

print("星期日")

break

break

3.答案:

str="Hello,welcometoitheima!

!

"

print(str.count("o"))

第5章列表、元组和字典

一、单选题

1.D

2.B

3.C

4.D

5.D

6.C

7.A

8.B

9.C

二、判断题

1.对

2.对

3.对

4.对

5.错

6.错

7.错

三、填空题

1.字典

2.字典,列表

3.notin

4.sort

5.小括号

四、简答题

1.答案:

(1)外形:

列表是中括号括起来的数据;元组是圆括号括起来的数据;字典是花括号括起来的数据

(2)存储结构:

列表可以存储多个不同类型的数据,以逗号分隔;元组同样能存储多个不同类型的数据,以逗号分隔;字典能存储多个键值对,以逗号分隔,键是唯一的,值是任何类型的。

(3)访问方式:

列表可以通过下标索引访问元素,索引从0开始;元组可以通过下标索引访问值,索引从0开始;字典通过键来访问值。

(4)是否可变类型:

列表是可变类型,列表是不可变类型,字典是可变类型。

五、程序分析题

1.答案:

程序运行错误,元组不能使用下标增加元素。

2.结果为:

3

3.结果为:

1,26

六、编程题

1.答案:

defmessage():

myStr=input("请输入密码,只能为字母和数字:

")

ifmyStr.isalnum():

print("符合要求")

else:

print("不符合要求")

2.答案:

arr=[]

evenStr=""

oddStr=""

message=input("请输入任意字符串:

")

forstringinmessage:

arr.append(string)

foreStrin(arr[:

:

2]):

evenStr=evenStr+eStr

foroStrin(arr[1:

:

2]):

oddStr=oddStr+oStr

print(evenStr+oddStr)

3.答案:

arr=[]

defcount():

myStr=input("请输入只包含字母的字符串:

")

ifmyStr.isalpha():

newStr=myStr.lower()

forstringinnewStr:

arr.append(string)

a={}

foriinarr:

ifarr.count(i)=1:

a[i]=arr.count(i)

print(a)

else:

print("输入的内容有误")

count()

4.答案:

arr=[]

result=""

myStr=input("请输入字符串:

")

forstringinmyStr:

arr.append(string)

last=arr[-1]

arr.remove(last)

arr.insert(0,last)

fornewinarr:

result=result+new

print(result)

5.答案:

arr=[]

length=int(input("请要输入数字的总个数(必须为奇数):

"))

i=0

whileilength:

num=

int(input("输入第%d个数字:

"%(i+1)))

arr.append(num)

i+=1

arr.sort()

index=int(length/2)

print(arr[index])

6.答案:

第一种:

arr=[1,2,3,4,5]

arr.reverse()

print(arr)

第二种:

arr=[1,2,3,4,5]

arr.sort(reverse=True)

print(arr)

7.答案:

arr=[]

length=int(input("请输入数字的总个数:

"))

i=0

whileilength:

num=

int(input("输入第%d个数字:

"%(i+1)))

arr.append(num)

i+=1

print("排序前:

%s"%arr)

#对列表排序

foriinrange(length):

flag=0

forjinrange(1,length):

ifarr[j-1]arr[j]:

arr[j-1],arr[j]=arr[j],arr[j-1]

flag=1

ifnotflag:

break

print("排序后:

%s"%arr)

8.答案:

arr=[]

length=int(input("请输入列表的总个数:

"))

i=0

whileilength:

element=

input("输入第%d个元素:

"%(i+1))

arr.append(element)

i+=1

#列表转为集合

newList=set(arr)

print(newList)

9.答案:

defadd(a,b):

#下面两行保证输入的a和b是维数相同的矩阵,根据实际情况不要也可以

assert(len(a)==len(b))

assert(all([len(a[i])==len(b[i])==len(a[0])foriinrange(len(a))]))

i,j=len(a),len(a[0])

c=[[0]*j]*i

forminrange(i):

forninrange(j):

c[m][n]=a[m][n]+b[m][n]

returnc

a=[[1,2,3],[4,5,6],[7,8,9]]

b=[[9,8,7],[6,5,4],[3,2,1]]

c=add(a,b)

print(c)

10.答案:

dic={}

i=0

whilei3:

number=input("输入学生学号:

")

name=input("输入学生姓名:

")

dic.__setitem__(number,name)

i+=1

print("排序前:

%s"%dic)

defdict2list(dic:

dict):

'''将字典转化为列表'''

keys=dic.keys()

vals=dic.values()

lst=[(key,val)forkey,valinzip(keys,vals)]

returnlst

new=sorted(dict2list(dic),key=lambdax:

x[0],reverse=False)

print("排序后:

%s"%new)

11.答案:

defdelMale(dict):

keys=[]

values=[]

for(key,value)indict.items():

keys.append(key)

values.append(value)

forvalueinvalues:

ifvalue==0:

index=values.index(value)

arrKey=keys[index]

deldict[arrKey]

values[index]=3

keys[index]="占位"

dic={"小明":

0,"小红":

1,"小兰":

1,"小白":

0}

print("删除前:

%s"%dic)

delMale(dic)

print("删除后:

%s"%dic)

12.答案:

arr=[12,3,37,7,91,67,27,45,6]

defdelPrime(arr):

forelementinarr:

#质数大于1

ifelement1:

#查看因子

foriinrange(2,element):

if(element%i)==0:

break

else:

arr.remove(element)

delPrime(arr)

print(arr)

第6章函数

一、单选题

1.C

2.D

3.C

4.A

5.C

6.D

二、判断题

1.错

2.对

3.对

4.错

5.对

6.对

7.错

8.对

三、填空题

1.逗号

2.return

3.return

4.不定长

5.嵌套

6.局部

7.整个程序

8.global

四、简答题

1.答案:

局部变量:

(1)函数内部定义的变量;

(2)作用域是函数的内部。

全局变量:

(1)函数外部定义的变量;

(2)作用域是整个程序。

2.答案:

(1)以def关键字开头,后面接函数标识符名称和圆括号;

(2)给函数起名字的时候,规则跟变量的名字是一样的;

(3)任何传入参数和自变量必须放在圆括号中间;

(4)函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明;

(5)函数内容以冒号起始,并且缩进;

(6)return[表达式]结束函数,选择性地返回一个值给调用方。

不带表达式的return相当于返回None。

五、程序分析题

1.结果为100

2.结果为:

200

3.结果为:

200,100

六、编程题

1.答案:

defgetMax():

num1=int(input("请输入第1个整数:

"))

num2=int(input("请输入第2个整数:

"))

num3=int(input("请输入第3个整数:

"))

temp=0#临时变量,存放中间产生的第2大数值

ifnum1num2:

temp=num1

else:

temp=num2

iftempnum3:

return"其中最大值为:

"+str(temp)

else:

return"其中最大值为:

"+str(num3)

maxValue=getMax()

print(maxValue)

2.答案:

defsum(n):

res=0

whilen=1:

ifn%2==0:

res-=1.0/(n*(n+1))

else:

res+=1.0/(n*(n+1))

n-=1

returnres

num=int(input("请输入一个整数:

"))

print(sum(num))

3.答案:

defis_palindrome(n):

n=str(n)

m=n[:

:

-1]

returnn==m

result=is_palindrome(1247321)

print(result)

4.答案

defsjx(a,b,c):

if(a+bcanda+cbandb+ca):

return"能构成三角形"

else:

return"不能构成三角形"

result1=sjx(3,4,5)

print(result1)

result2=sjx(1,1,2)

print(result2)

5.答案:

#定义函数

deflcm(x,y):

#

获取最大的数

ifxy:

greater=x

else:

greater=y

while(True):

if((greater%x==0)and(greater%y==0)):

lcm=greater

break

greater+=1

returnlcm

#获取用户输入

num1=int(input("输入第一个数字:

"))

num2=int(input("输入第二个数字:

"))

print(num1,"和",num2,"的最小公倍数为",lcm(num1,num2))

第7章高级函数

一、单选题

1.B

2.C

3.D

4.A

二、判断题

1.错

2.错

3.错

4.对

5.对

6.错

7.错

8.对

9.对

10.错

11.对

三、填空题

1.闭包

2.函数

3.被修饰的函数

4.@

5.内嵌

6.map

7.None

8.filter

9.布尔

10.两

四、简答题

1.答案:

(1)存在于嵌套关系的函数中;

(2)嵌套的内部函数引用了外部函数的变量;

(3)嵌套的外部函数会将内部函数名作为返回

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2