1.看代码写结果
v1=[1,2,3,4,5]
v2= [v1,v1,v1]
v1.append(6)
print(v1)
print(v2)
结果
[1, 2, 3, 4, 5, 6]
[[1, 2, 3, 4, 5, 6], [1, 2, 3, 4, 5, 6], [1, 2, 3, 4, 5, 6]]
2.看代码写结果
v1 = [1,2,3,4,5]
v2 - [v1,v1,v1]
v2[1][0] = 111
v2[2][0] = 222
print(v1)
print(v2)
[222, 2, 3, 4, 5]
[[222, 2, 3, 4, 5], [222, 2, 3, 4, 5], [222, 2, 3, 4, 5]]
3.看代码写结果,并解释每一步的流程。
v1 = [1,2,3,4,5,6,7,8,9]
v2 = i}
for item in v1:
if item < 6:
continue
if‘k1’ in v2:
v2[ ‘k1’].append(item)
else:
v2["k1’] =[item ]
print(v2)
{“k1",[6,7,8,9]}
循环v1这个列表,判断列表的每一个值是否小于6,小于6执行下一次循环,大于等于6则执行下一个if 判断k1是否为字典v2的键,如果为字典的键,则追加一个值,否则重新创建键,值为一个列表,
4.简述深浅拷贝?
+ 浅copy:
比如,对列表l1进行浅copy形成l2,那么在内存中会开辟一个空间存储l2这个列表,但是l2列表里面的数据还是与L1里面的数据共享。
+ 深copy:
比如,对列表l1进行深copy形成l2,那么在内存中会开辟一个空间存储l2这个列表,l2列表里面的可变的数据也是会重新创建,但是不可变的数据还是与L1里面的数据共享。
5.看代码写结果
import copy
v1 = “alex”
v2 = copy.copy(v1)
v3 = copy.deepcopy(v1)
print(v1 is v2)
print(v1 is v3)
True
True
6.看代码写结果
import copy
v1 = [1,2,3,4,5]
v2 = copy.copy(v1)
v3 = copy.deepcopy(v1)
print(v1 is v2)
print(v1 is v3)
False
False
7.看代码写结果
人
import copy
v1=[1,2,3,4,5]
v2 = copy.copy(v1)
v3 = copy.deepcopy(v1)
print(v1[0] is v2[0])
print(v1[0] is v3[0])
print(v2[0] is v3[0])
True
True
True
8.看代码写结果
import copy
v1 - [1,2,3,4,[11,22]]
v2 = copy.copy(v1)
v3 = copy.deepcopy(v1)
print(v1[-1] is v2[-1])
print(v1[-1] is v3[-1])
print(v2[-1] is v3[-1])
True
False
False
9.看代码写结果
import copy
v1 - [1,2,3,i"name":'太白·, “numbers”:[7,77,88]},4,5]
v2 = copy.copy(v1)
print(v1 is v2)
print(v1[0] is v2[0])
print(v1[3] is v2[3])
print(v1[3][‘name’] is v2[3][ ‘name’ ])
print(v1[3][‘numbers’] is v2[3][ ‘numbers’])
print(v1[3][ ‘numbers’][1] is v2[3][ 'numbers '][1])
False
True
True
True
True
True
10.看代码写结果
import copy
v1 -[1,2,3,(“name”:“太白’ , " numbers”:[7,77,88]},4,5]
v2= copy.deepcopy(v1)
print(v1 is v2)
print(v1[0] is v2[0])
print(v1[3] is v2[3])
print(v1[3][‘name’] is v2[3][‘name’])
print(v1[3][ 'numbers '] is v2[3][‘numbers’])
print(v1[3][ ‘numbers’][1] is v2[3][ 'numbers '][1])
False
True
False
True
False
True
11.请说出下面a,b,c三个变量的数据类型。
a = 太白金星·)
b = (1,)
c = (i 'name ’ : ‘barry’})
a是字符串
b是元组
c是字典
12.按照需求为列表排序:
l1 = [1,3,6,7,9,8,5,4,2]
#从大到小排序
#从小到太排序
#反转11列表
#从小到太排序
#从大到小排序
l1 = [1,3,6,7,9,8,5,4,2]
l1.sort()
print(l1)
#从小到太排序
l1 = [1,3,6,7,9,8,5,4,2]
l1.sort(reverse=True)
print(l1)
#反转11列表
l1 = [1,3,6,7,9,8,5,4,2]
l1.reverse()
print(l1)
13.利用python代码构建一个这样的列表(升级题):
[[’’,’‘→’’],[’’,’’,’’],[’’,’’,’_’]]
li=[]
l1=[]
for i in range(0,3):
li.append("_")
for i in li:
l1.append(li)
print(l1)
14.看代码写结果:
l1 = [1,2,]
l1 += [3,4]
print(l1)
[1,2,3,4]
15.看代码写结果:
dic = dict.fromkeys( ‘abc’,[])
dic[‘a’].append(666)
dic[‘b’].append(111)
print(dic)
{'a': [666, 111], 'b': [666, 111], 'c': [666, 111]}
16.l1=[11,22,33,44,55],请把索引为奇数对应的元素删除(不能一个一个删除,此l1只是举个例子,里面的元素不定)
l1=[11,22,33,44,55]
l2=[]
for i in range(len(l1)):
if i%2==0:
l2.append(l1[i])
print(l2)
17.dic = {k1:‘太白’ k2’∵’barry ;‘k3’:‘白白’, ‘age’:18}请将字典中所有键带k元素的键值对删除.
dic = {'k1':'太白', 'k2':'barry','k3':'白白','age':18}
li=[]
for key in dic.keys():
if "k" in key:
li.append(key)
for i in li:
dic.pop(i)
print(dic)
18.bytes数据类型是python的基础数据类型,bytes类型存在的意义是什么?
bytes
字节类型
19.列举bytes类型与str类型的三个不同点?
20.完成下列需求:
s1 =‘太白金星·
#将s1转换成utf-8的bytes类型。
#将s1转化成gbk的bytes类型。
b = b’\xe5\xa4\xaa\xe7\x99\xbd\xe6\x9c\x80\xe5\xb81x85’
b为utf-8的bytes类型,请转换成gbk的bytes类型。
21.用户输入一个数字,判断一个数是否是水仙花数。
水仙花数是一个三位数三位数的每一位的三次方的和还等于这个数.那这个数就是一个水仙花数,
例如:153 =13+53+3**3
a=int(input("情输入一个整数").strip())
try:
ge=a%10
shi=a//10%10
bai=a//100
if ge**3+shi**3+bai**3:
print("是水仙花数")
else:
print("不是水仙花数")
except:
print("输入错误")
22.把列表中所有姓周的人的信息删掉(此题有坑,请慎重):
lst=['周老二,‘周星星’,‘麻花藤’,;'周扒皮1]
结果: lst =['麻花藤]
lst=['周老二','周星星','麻花藤','周扒皮']
li=[]
for i in lst:
if "周" == i[0]:
continue
else:
li.append(i)
print(li)
23.车牌区域划分,现给出以下车牌.根据车牌的信息,分析出各省的车牌持有量.(选做题)
cars =[鲁A32444’,‘鲁B12333;‘京B8989M’;‘黑C49678’;‘黑C46555’,,沪B25041’…]
locals = {‘沪∵’上海’,‘黑∵黑龙江,′鲁∵:山东’,′∵湖北’,湘∵湖南’…}
结果:{‘黑龙江’:2,‘山东’:1,‘北京’:1}
任务附件
2020年09月15日-2020年09月16日I不允许复制
cars =['鲁A32444','鲁B12333','京B8989M','黑C49678','黑C46555','沪B25041']
locals = {'沪':'上海','黑':'黑龙江','鲁':'山东','鄂':'湖北','湘':'湖南'}
count=0
dic={}
for key in locals.keys():
for i in cars:
if key == i[0]:
count=count+1
if count>0:
dic[locals[key]]=count
count=0
print(dic)