注意:只有必答题部分计算分值,补充题不计算分值。
python2 解释器默认编码:ascii
python3 解释器默认编码:utf-8
输入(python2与python3的区别二)
python2:name=raw_input(‘请输入姓名‘)
python3:name=input(‘请输入你的姓名‘)
输出(python2与python3的区别三)
python2:print "你好"
python3:print("你好")
数字表示(python2与python3的区别四)
python2
64位机器,范围-2^63~2^63-1
超出上述范围,python自动转化为long(长整型)
注:long(长整型)数字末尾有一个L
python3
所有整型都是int,没有long(长整型)
整型除法(python2与python3的区别五)
python2:只能保留整数位
python3:可以保留所有内容
range / xrange(python2与python3的区别六)
python2:
xrange:不会在内存中立即创建,而是在循环时,边循环边创建
range:在内存立即把所有的值创建
python3:
只有range,相当于python2中的xrange
range:不会在内存中立即创建,而是在循环时,边循环边创建
包的定义(python2与python3的区别七)
python2:文件夹中必须有_ _ init _ .py文件
python3:不需要有 _ init _ _.py文件
字典的keys / values / items方法(python2与python3的区别八)
python2:返回列表,通过索引可以取值
python3:返回迭代器,只能通过循环取值,不能通过索引取值
map / filter(python2与python3的区别九)
python2:返回列表,直接创建值,可以通过索引取值
python3:返回迭代器,不直接创建值,通过循环,边循环边创建
str(字符串类型)的区别(python2与python3的区别十)(最大区别,优先写这个)
python2:
str类型,相当于python3中的字节类型,utf-8/gbk等其他编码
unicode类型,相当于python3中的字符串类型,unicode编码
python2中没有字节类型
python3:
str类型,字符串类型,unicode编码
python3中没有unicode类型
继承object(python2与python3的区别十一):
class Foo:
pass
class Foo(object):
pass
class Foo:
pass
class Foo(object):
pass
# 支持super
# 多继承 广度优先C3算法
# mro方法
# py2中不继承object
# 没有super语法
# 多继承 深度优先
# 没有mro方法
看代码写结果
v1 = 1 or 2 1
v2 = 3 and 7 or 9 and 0 7
比较以下值有什么不同?
v1 = [1,2,3] 列表
v2 = [(1),(2),(3)] 和v1一样
v3 = [(1,),(2,),(3,)] 列表嵌套元祖
用一行代码实现数值交换。
a = 1
b = 2
a,b = b,aname=‘老男孩‘
的反转?两个set如何获取交集、并集、差集?
set(a)&set(b)
set(a)|set(b)
set(a)-set(b)
那些情况下, y != x - (x-y)会成立?
阅读代码写结果。
import copy
a = [1,2,4,5,['b','c']]
b = a
c = copy.copy(a)
d = copy.deepcopy(a)
a.append(5)
a[4].append('d')
print(b)
print(c)
print(a)
print(b) [1,2,4,5,[‘b‘,‘c‘,‘d‘],5]
print(c) [1,2,4,5,[‘b‘,‘c‘,‘d‘]]
print(a) [1,2,4,5,[‘b‘,‘c‘,‘d‘],5]
用Python显示一个斐波那契数列。
*arg
和**kwarg
作用?什么是装饰器及应用场景?
写一个普通的装饰器。
def warpper(func):
def inner():
print("111")
func()
print("222")
return inner
@warpper
def func():
print("被装饰的函数")
@func_z
def func_b(*args,**kwargs):
print("我是被装饰的函数")
求结果
def num():
return [lambda x:i*x for i in range(4)]
print([m(2) for m in num()])
[6,6,6,6]看代码写结果
def func(a,b=[]):
b.append(a)
return b
v1 = func(1)
v2 = func(2,[10,20])
v3 = func(3)
print(v1,v2,v3)
[1,3]看代码写结果
def func(a,b=[]):
b.append(a)
return b
v1 = func(1)
print(v1)
v2 = func(2,[10,20])
print(v2)
v3 = func(3)
print(v3)
请编写一个函数实现将IP地址转换成一个整数。
如 10.3.9.12 转换规则为:
10 00001010
3 00000011
9 00001001
12 00001100
再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?
请查找一个目录下的所有文件(可能存在文件嵌套)。
求结果
import math
print (math.floor(5.5))
是否使用过functools中的函数?其作用是什么?
re的match和search区别?
用Python匹配HTML tag的时候,<.>和<.?>有什么区别?
如何生成一个随机数?
super的作用?
双下划线和单下划线的区别?
@staticmethod和@classmethod的区别?
实现一个单例模式(加锁)。
栈和队列的区别?
以下代码输出是什么? 请给出答案并解释。
class Parent(object):
x = 1
class Child1(Parent):
pass
class Child2(Parent):
pass
print Parent.x, Child1.x, Child2.x
Child1.x = 2
print Parent.x, Child1.x, Child2.x
Parent.x = 3
print Parent.x, Child1.x, Child2.x
参考下面代码片段
class Context:
pass
with Content() as ctx:
ctx.do_something()
请在Context类下添加代码完成该类的实现
原文:https://www.cnblogs.com/sjf981012-/p/12366138.html