1:简述解释型和编译型编程语言?
编译型:
先把代码编译成机器码---->计算机寄存器(0101运算)去运行 :c语言
或者有人认为,把代码编译成xxx--->计算机找编译虚拟器运行 --->机器码交给计算机去执行 :c语言、Java、c#
解释性:
边解释边执行(在代码报错时前面的代码都执行)
4:字符串和列表如何相互转换?
列表--->字符串:‘’.join(['',''])
字符串--->列表 :
list()
split()
5: 写代码实现字符串反转,如:v = ‘oldboy’
法一:v[::-1]
法二:先转成list,然后reverse
1 v='oldboy' 2 3 #法一: 4 5 s=v[::-1] 6 7 print(s)#yobdlo 8 9 #法二: 10 11 li=list(v)#转列表 12 13 li.reverse()#反转 14 15 s=''.join(li)#转字符串 16 17 print(s) |
6:python2/3的区别
参考我的博文
9: 比较: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的区别?
a=[1,2,3]
b=[1,2,3] 注意()表示优先级
c = [(1,),(2,),(3,)]
注意:以后写元祖:必须加逗号
v= (1,2,)
10:求结果
v = [lambda:x for x in range(10)]
print( v )
# 一个列表,列表中有10个匿名函数
print( v[0] ) # 列表中的第一个函数
print( v[0]() )
1 #知识点 2 3 #匿名函数:函数名=lambda参数:返回值 4 5 #列表推导式的常用写法:[结果for变量量in可迭代对象判断条件] 6 7 #可以这么看 8 9 forxinrange(10): 10 11 pass 12 13 print(x)#9 14 15 #lambda:x 16 17 defv(): 18 19 returnx 20 21 print(v())#9 |
11re的match和search区别?
match()函数只检测RE是不是在string的开始位置匹配,在0位置匹配成功的话才有返回不是的话返回NONE
search()会扫描整个string查找匹配
13: msg = '123.33sdhf3424.34fdg323.324',计算字符串中所有数字的和
本题结果应为:123.33+3424.34+323.32
1 import re 2 3 msg='123.33sdhf3424.34fdg323.324' 4 5 s=re.findall('\d+(?:\.\d+)?',msg) 6 7 sum=0 8 9 for i ins: 10 11 sum+=float(i) 12 13 print(sum)#3870.994 |
15: 创建一个闭包函数需要满足哪几点?
a. 两层函数
b. 第一层函数返回内层函数的名称
16:简述面向对象的三大特性并用代码说明?
封装:数据封装到对象;方法封装到类
继承:多个类中都有的方法提取到父类中
多态:函数的参数可以是多重形态,如:def func(arg):arg.send()
24 :函数和方法如何通过代码区分?
MethodType,isinstance(值,MethodType)
FunctionType,isinstance(值,FunctionType)
26 :如何将一个对象变成一个可迭代对象?
在类中编写 __iter__ 方法,且该方法要返回迭代器或生成器(生成器是迭代的一种)
27:简述反射的作用并列举反射相关的所有方法。
反射,用于根据字符串的形式去指定对象中获取其成员。
getattr/setattr/delattr/hasattr
29:写代码实现一个md5加密的函数。
m = hashlib.md5(b’xxxdff’)
m.update(b’fadfsdf’)
m.hexdigest()
31:抽象类加抽象方法 和 接口的区别?
抽象类加抽象方法的功能和接口一样,都是约束继承了他的类中必须有指定的方法。
接口中不能写具体实现,抽象类中可以写公共的方法(提供继承的功能)。
34如何获取异常的堆栈信息?
import traceback
try:
…
except Exception as e:
traceback.format_exc()
注意:单独写 trance.format_exc() 也可以。

浙公网安备 33010602011771号