python练习题-答案

别妄想泡我
570次浏览
2021年01月23日 02:27
最佳经验
本文由作者推荐

-高中英语日记

2021年1月23日发(作者:识记生字的方法)

Python
练习题库

By
郑红波

2017
-
12
-
19

一、

填空题

1.

Python
标准库
math中用来计算平方根的函数是
__________


sqrt


2.


Python

_________ _
表示空类型。

None


3.

列 表、元组、字符串是
Python

_________(
有序?无序
)
序列。
(有序)

4.

查看变量类型的
Py thon
内置函数是
________________


typ e()


5.

查看变量内存地址的
Python
内置函数是
_________________


id()


6.

表达式
[1, 2, 3]*3
的执行结果为______________________


[1, 2, 3, 1, 2, 3, 1, 2, 3]


7.

list(map(str, [1, 2, 3]))
的执行结果为
_______ ______________


[‘1’, ‘2’, ‘3’]


8.

已知

x
=
3
,并且
id(x)
的返回值为

496103280
,那么执行语句

x
+=
6
之后,表达式

id(x)
==
496103280
的值为
___________


False


9.

已知

x = 3
,那么执行语句

x *= 6
之后,
x
的值为
________________


18


10.

表达式“
[3] in [1, 2, 3, 4]
”的值为
_______ _________


False


11.

假设列表对象
aList
的值为
[3,
4,
5,
6,
7,
9,
11,
13,
15,
1 7]
,那么切片
aList[3:7]
得到的值是
____________ __________


[6, 7, 9, 11]


12.

使用列表推导式生成包含
10
个数字
5
的 列表,语句可以写为
_______________


[5
for
i
in
range(10)]


13.

假设有列表
a = ['name', 'age', 'sex']

b = ['Dong', 38, 'Male']
,请使用一个语 句将这两个列表的内
容转换为字典,并且以列表
a
中的元素为“键”
,以列表
b
中的元素为“值”
,这个语句可以写

____________ _________


c = dict(zip(a, b))


14.

任意长度的
Python
列表 、元组和字符串中最后一个元素的下标为
________


-
1


15.

Python
语句
''.join(list('hello world!'))< br>执行的结果是
____________________


'he llo world!'


16.

转义字符
’n’的含义是
___________________

(回车换行)

17.

Python
语句
list(range(1,10,3) )
执行结果为
___________________


[1, 4, 7]


18.

切片操作
list(range( 6))[::2]
执行结果为
________________


[0, 2, 4]


19.

表达式

'ab' in 'acbed'
的值为
________


False


20.

Python 3.x
语句

print(1, 2, 3, sep=':')
的输出结果为
____________


1:2:3


21.

表达式

int(4**0.5)
的值为
____________


2


22.

达式

sorted([111, 2, 33], key=lambda x:
-
len(str(x)))
的值为
____________


[111, 33, 2]


23.

已知列表对象
x = ['11', '2', '3']
,则表达式

max(x)
的值为
___________


'3'


24.

表达式

min(['11', '2', '3'])
的值为
_________________


'11'


25.

已知列表对象
x = ['11', '2', '3']
,则表达式
max(x, key=len)
的值为
___________


'11'


26.

语句

x = (3,)
执行后
x的值为
_______________


(3,)


27.

语句

x = (3)
执行后
x< br>的值为
________________


3


28.

已知

x = {1:2}
,那么执行语句

x[2] = 3
之后,
x
的 值为
________________


{1: 2, 2: 3}


29.

字典对象的
_____________
方法返回字典中的“键
-
值对”列表。

items()


30.

使








100





被< br>13











___________________________________< br>。

[i for i in range(100) if i%13==0]


31.

表达式

3 ** 2
的值为
_________


9


32.

表达式

3 * 2
的值为
___________


6


33.

已知

x = [3, 5, 7]

那么执行语句

x[len(x):] = [1, 2]
之 后,
x
的值为
______________


[3, 5, 7, 1, 2]


34.

表达式

list(zip([1,2], [3,4]))
的值为
___________ _____________


[(1, 3), (2, 4)]


35.

已知

x = [1, 2, 3, 2, 3]
,执行语句

()
之后,
x
的值为_____________


[1, 2, 3, 2]


36.

表达式

[x for x in [1,2,3,4,5] if x<3]
的值为
_____________________


[1, 2]


37.

表达式

[index
for
index,
value
in
enumerate([3,5,7,3,7])
if
value
==
max([3,5,7,3,7])]
的值为
__________________


[2, 4]


38.

已知

path = r'c:'
,那么表达式

path[:
-
4]+'htm'
的值为
__________


'c:'



39.

表达式

'%d,%c' % (65, 65)
的值为
________


'65,A'


40.

表达式

'The first:{1}, the second is {0}'.format(65,97)
的值为
__________ ____________________


'The first:97, the second is 65'


41.

表达式

':'.join('abcdefg'.split('cd'))
的值为
___ ___________


'ab:efg'


42.

表达式

isinstance('abcdefg', str)
的值为
____________


True


43.

表达式

'Hello world. I like Python.'.find('python')
的值为
________


-
1


44.

表达式

','.join('a




b

cccnnnddd




'.split())
的值为
______________


'a,b,ccc,ddd'


45.

已知

x = '123'


y = '456'
,那么表达式

x + y
的值为
_________ _____


'123456'


46.

表达式

'abcab'.replace('a','yy')
的值为< br>___________


'yybcyyb'


47.

已知

table
=
''.maketrans('abcw',
'xyzc')
,那么表达式

'Hellow
world'.translate(table)
的值为
______________________


'Helloc corld'


48.

已知
x = {'b':1, 'a':2}
,那么执行语句
({‘a’:3, ‘d’:4})
之后,表达式
sorted(())
的值为
____________________


[('a', 3), ('b', 1), ('d', 4)]


49.

已知
x = list(range(20))
,那么语句
print(x[100:200])
的输出结果为
_______________


[]


50.

表达式
sorted({'a':9, 'b':3, 'c':78}.values())
的值为
_____________


[3, 9, 78]


51.

type(1+2*3.14)
的结果是:




















float class


二、

阅读程序

1.

写出下面代码的执行结果。

def Join(List, sep=None):







return (sep or ',').join(List)

print(Join(['a', 'b', 'c']))

print(Join(['a', 'b', 'c'],':'))

答:

a,b,c

a:b:c

2.


k
为整数,下述
while
循环执行的次数为:



9






k=1000

while k>1:






print(k)






k=k//2


3.

写出下面代码的运行结果。

def Sum(a, b=3, c=5):





return sum([a, b, c])

print(Sum(a=8, c=2))

print(Sum(8))

print(Sum(8,2))

答:

13

16

15


4.

写出下列程序输出结果

i=1

while i+1:


if i>4:



print(



i+=1




break


print(


i+=1


i+=1

5.

写出下面代码的运行结果。

def Sum(*p):





return sum(p)

print(Sum(3, 5, 8))

print(Sum(8))

print(Sum(8, 2, 10))

答:

16

8

20


6.

下面程序的执行结果是
__________________


1


s = 0

for i in range(1,101):





s += i

else:

print(1)


7.

下面程序的执行结果是
______________

1275


s = 0

for i in range(1,101):





s += i





if

i == 50:









print(s)









break

else:





print(1)

8.

阅读下面的代码,输出结果为
_____________


x = list(range(10))

for index, value in enumerate(x):





if value == 3:





x[index] = 5

else:





print(x)

答:将列表
x
中值为
3
的元素修改为
5


9.

阅读下面的代码,解释其功能:
















































>>> import string

>>> x = _letters +

>>> import random

>>> print(''.join((x, 10)))

答:输出由英文字母大小写或数字组成的长度为
10
且不重复的随机字符串。


10.

下面的代码输出结果为
_____________

3


def demo():





x = 5


x = 3

demo()

print(x)

11.

下面程序运行的结果为
_______________


[5, 6, 1, 2, 3, 4]


def demo(lst, k):


if k


return lst[k:]+lst[:k]


lst=[1,2,3,4,5,6]

demo(lst,4)

12.

下面程序运行的结果为
_____ appy New Year!H__________


def foo(s):


if s==



return s


else:



return s[1:]+s[0]

print (foo('Happy New Year!'))

13.

下面程序运行的结果是
{1:'aa',2:'bb',3:'ff',6:'dd',87: 'ee'}
















l1
=[
1
,
2
,
3
,
6
,
87
,3
]

l2
=[
'aa'
,
'bb'
,
'cc'
,
'dd'
,
'ee'
,
'ff']

d
={}

for
index
in
range
(
len
(
l1
)):

d
[
l1
[
index
]]=
l2
[
index
]

print
d

14.

下面程序运行的结果为


[3

2] [1

2]




























.

list1=[1,2]

list2=list1[::]


list1[0]=3


print(list1,list2)

15.

下面程序运行的结果为






恭喜,你已获得我公司的面试机会
!













age, subject,college=

24

“计算机”

”非重点”
)

if
(age
>
25
and
subject==
电子信息工程

or
(college==
重点

and
subject==
电子信息工程

)
or
(age<=28 and subject==
计算机






print(
恭喜,你已获得我公司的面试机会
!

else:

print(
抱歉,你未达到面试要求


16.

下面程序运行的结果为




















for num in range(2,10):










if

num%2 == 0:

























continue










print(

答案:

1
Find a odd numer 3

2 1
3 2 1
Find a odd numer 5

4 3 2 1
Find a odd numer 7

5 4 3 2 1
Find a odd numer 9

6 5 4 3 2 1
17.

下面程序打印结果:


for i in range(1, 7):










print(' '*2*(6
-
i),end='')









for j in range(i, 0,
-
1):













print(j, end =









print()


18.

下面程序输入
>>>rev(‘I love you’)
返回值为



you love I












def rev1(s):





s=()











s1=‘ ’.join(reversed(s))

return s1

19.

阅读程序,打印结果是


















1000



















def addInterest(balance,rate):





newBalance=balance*(1+rate)





balance=newBalance

def main():





amount=1000





rate=0.05





addInterest(amount,rate)





print (amount)

main()

20.

阅读程序,打印结果是






































def demo(newitem,old_list=[]):





old_(newitem)





return old_list

def main():





print(demo(‘a’))








print(demo(‘b’))

main()

答案:
['a']

['a', 'b']

21.

阅读程序,打印结果是






































def func5(a, b, *c):




print(a,b)




print(

func5(1,2,3,4,5,6)

答案:
1 2







length of c is 4,c is (3, 4, 5, 6)

22.

阅读程序,打印结果是

(2.5, 3, 4)

































def demo(*para):





avg = sum(para)/len(para)





g = [i for i in para if i>avg]





return (avg,)+tuple(g)

print(demo(1,2,3,4))


23.

阅读程序,打印结果是


































def f(w=1,h=2):




print(w,h)

f()

f(w=3)


f(h=7)

f(a=3)

答案:
1 2







3 2







1 7







错误

24.

阅读程序,打印结果是


































def sort(number1,number2):


if number1


return number1,number2


else:







return number2,number1


n1,n2=sort(3,2)

print('n1 is ',n1)

print('n2 is ',n2)

答案:
n1 is

2







n2 is

3

25.

阅读程序,打印结果是

10 60
































def demo(m, n):





if m>n:









m, n = n, m





p = m*n





while m!=0:









r = n%m









n = m









m = r





return (n,p//n)

print( demo(20, 30))


三、程序填空题

1.

下面代码的功能是,随机生成
50
个介于
[1,20]
之间的整数,然后统计每个整数出现频率。请把
缺少的代 码补全。

import random

x = [random.____________(1,20) for i in range(_______)]

r = dict()

for i in x:





r[i] = (i, _____)+1

for k, v in ():

print(k, v)

答:

分别填写
randint

50

0

2.

生成包含
1000
个随机字符的字符串,
然后统计前
20
个高频字符,
最后以
15
个位左对齐输出高
频字符,以
5
个位右对齐输出个数。请把缺少的代码补全。


import
random


















x = _letters + + ation

y = [

















for
i
in
range(1000)]

d = dict()


for
ch
in y
:








d[ch] = (ch, 0) + 1




i
tems=list(())



















(


















,reverse=
True
)


for
i
in
range(20):










word,count = items[i]










print(















%(word,count))


答案:
import
string



(x)

key=
lambda
x:x[1]


%
-
15s%5d



3.

用户输入
5
,打印如右图字符金字塔图形,请补全代码:

n=input('
输入行数:
')























for i in range(1,n+1):





print(












,end=‘ ')





for j in range(1,2*i):









print('&',











)













print()

答案:
n=int(n)

' '*(n
-
i)

end=''


4.

质因数分解,如输入
60
,则得到
60 = 2 * 2 * 3 * 5.
请补全代码:

x=eval(input(

请输入小于
1 000
的整数:

))

k=2




































while

x>1:





if































:










print(k,end=

)










x = x//k










if
x >1:














print(

,end=

)









else
:




































答案:
print(x,
,end=

)

x % k==0

k += 1


5.

验证哥德巴赫猜想:一个大于等于
6
的偶数可以表示为两个素数之和,请补全代码。

import math

x=eval(input(

输入一个数

))

while
x<6
or
x%2==1:













#
大于
6
的偶数





x=eval(input(

输入一个数

))

for
n1
in



























:










m1=int((n1)+1)





for
i
in
range(2,m1):








#2
-
sqrt(n1)









if




















:













break





else
:










































































m2=((n2)+1)









for
j
in
range(2,m2):













if
n2%j==0
and
j

-高中英语日记


-高中英语日记


-高中英语日记


-高中英语日记


-高中英语日记


-高中英语日记


-高中英语日记


-高中英语日记