目录
2、简述read、readline、readlines的区别
6、一个函数接收文件夹的名称作为参数,返回该文件中所有文件的全路径
14.现有字典 d= {'a':24,'g':52,'i':12,'k':33}请按value值进行排序?
18.给定两个列表,怎么找出他们相同的元素和不同的元素?如何合并两个列表,且列表中没有重复元素?
19.请写出一段python代码实现删除list里面的重复元素?
1、python中is和==的区别
Python中对象包含的三个基本要素,分别是:id(身份标识) 、type(数据类型)和value(值)。
‘==’比较的是value值
‘is’比较的是id
>>> x=[1,2,3]
>>> y=[1,2,3]
>>> id(x)
50365000
>>> id(y)
50215304
>>> x is y
False
>>> x==y
True
2、简述read、readline、readlines的区别
read读取整个文件
readline该方法每次读出一行内容
readline() 方法用于从文件读取整行,包括 "\n" 字符。如果指定了一个非负数的参数,则返回指定大小的字节数,包括 "\n" 字符。
readlines方法读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存
3、举例说明创建字典的至少两种方法
# 1
dict1 = {key1:v1,key2:v2}
# 2
dict2 = {}
dict2[key1] = v1
dict2[key2] = v2
# 3
dict3 = dict(key1=v1,key2=v2)
4、*args,**kwargs的作用是什么?如何使用?
*args和**kwargs通常使用在函数定义里,*args允许函数传入不定量个数的非关键字参数,**kwargs允许函数传入不定量个数的关键字参数。
5、python中match()和search()的区别?
match():只检测RE是不是在string的开始位置匹配。
search():会扫描整个string查找匹配
match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none。
6、一个函数接收文件夹的名称作为参数,返回该文件中所有文件的全路径
os.walk() 方法可以创建一个生成器,用以生成所要查找的目录及其子目录下的所有文件。
os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。
根目录下的每一个文件夹(包含它自己), 产生3-元组 (dirpath, dirnames, filenames)【文件夹路径, 文件夹名字, 文件名】
import os
def walk_folder(spath):
for root, dirs, files in os.walk(spath, topdown=False):
for name in files:
print(os.path.join(root, name))
for name in dirs:
print(os.path.join(root, name))
执行结果示例
D:\final_lib1\cpf_lib\test.py
D:\final_lib1\cpf_lib\test.pyc
D:\final_lib1\cpf_lib\__init__.py
D:\final_lib1\cpf_lib\__init__.pyc
D:\final_lib1\__init__.py
D:\final_lib1\cpf_lib
7、阅读下面的代码,写出A0,A1至An的最终值
1.A0 = dict(zip(('a','b','c','d','e'),(1,2,3,4,5)))
{'a':1,'b':2,'c':3,'d':4,'e':5}
2.A1 = range(10)
[0,1,2,3,4,5,6,7,8,9]
3.A2 = [i for i in A1 if i in A0]
[]
4.A3 = [A0[s] for s in A0]
[1,2,3,4,5]
5.A4 = [i for i in A1 if i in A3]
[1,2,3,4,5]
8、请写一段代码实现Python中list去重。
#方法1
list1 = [1,1,2,3,3,4]
list1 = list(set(list1))
#方法2
list1 = [1,1,2,3,3,4]
list2=[]
for i in list1:
if i not in list2:
list2.append(i)
#方法3
list({}.fromkeys(list1).keys())
#方法4
按照索引再次排序
orgList=[1,0,3,7,7,5]
formatList=list(set(orgList))
formatList.sort(key=orgList.index)
print(formatList)
结果:
[1,0,3,7,5]
顺便说明下: list.sort中key参数的用法
# 获取列表的第二个元素
def takeSecond(elem):
return elem[1]
# 列表
random = [(2, 2), (3,