python面试题

1.下列输出可能不是“aa,bb”的是(B)

d0 = {"a":"aa","b":"bb"}
print("字典: {a},{b}".format(**d0))

d1 = {"aa","bb"}
print("集合: {0},{1}".format(*d1))

d2 = ["aa","bb"]
print("列表: {0},{1}".format(*d2))

d3 = ("aa","bb")
print("元组: {0},{1}".format(*d3))

#****输出结果*****
字典:aa ,bb
集合:bb ,aa
列表:aa ,bb
元组:aa ,bb

2.执行完下列代码后cnt的值等于几?()

import re
cnt = 0
pattern = "text"
if re.match(pattern,"text.tap"):
    cnt += 1
if re.match(pattern,"tap.text"): #执行第一个就不执行第二个
    cnt += 1
if re.search(pattern,"text.tap"):
    cnt += 1
if re.search(pattern,"tap.text"):
    cnt += 1

print(cnt)
#输出看结果:
# 3

3.执行完下列代码,最终的输出结果是多少?(D)

data_list = [1,2,3,4,5]
for i in data_list:
    data_list.remove(i)
print(data_list)

A.[]
B.[1,3,4]
C.[2,5]
D.[2,4]

8.如下打印结果为:A

a = 1
def outdef():
    def indef():****
        nonlocal a
        print(a)
        a = 3
    a = 2
    indef()
    print(a)

outdef()
print(a)

********分析**********
就近原则:
进入indef()的是a=2,打印之后被修改为3出来的a=3
**********************

A. 2 3 1
B. 1 2 3
C. 2 3 2
D. 1 3 1

posted @ 2020-06-15 23:19  lomox9  阅读(226)  评论(0编辑  收藏  举报