python常见基础编程题目,python编程入门试题
Q1: 请写出一段Python实现删除一个列表中的重复元素?
使用设置
a=[ 1,2.3,1,5,6,7,5 ]
打印(一套)
Q2:一球从 100 米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
if __name__==__main__ :
i=1
x=100
总和=0
当i=10时:
总和=x
x=x/2
总和=x
i=1
Print()总共经过%f米,第十次弹跳的高度是% f (sum,x))))))。
Q3:Python中浅拷贝和深拷贝怎么用?
浅拷贝copy.copy(),因为没有子对象的拷贝,所以原始数据会改变,子对象也会改变。
因为深层副本copy.deepcopy()包含了对象中子对象的副本,所以即使原对象发生变化,深层副本中的子元素也不会发生变化。这样,即使对象发生变化,原对象也不会受到影响。这意味着原始数据不会改变。
ImportCopya=[1,2,3,4,[a , b]] #原始对象b=a #赋值
C=copy.copy(a) #对象副本,轻型副本
D=copy.deepcopy(a) #对象复制,深度复制
A.append(5) #修复对象a
答[4]。追加( c ).
是打印(a)
打印(b)是
是打印(c)
打印(d)是
Q4: Python中打开文件可以自动关闭的关键字是什么?
一起使用
withopen(d:(test.txt),r ) as f:
打印f.readlines(
Q5: 列出python中可变数据类型和不可变数据类型,并简述原理
不变数据类型:数字类型、字符串类型、元组。
不允许更改变量值。改变变量值意味着创建一个新的对象,但是对于相同值的对象,内存中只有一个对象(一个地址)。
可变数据类型:list list和dict箴言;
允许变量值被改变。也就是说,在对变量进行append等操作后,只改变变量的值,不创建新的对象,变量引用的对象的地址不变。但是,根据具有相同值的不同对象,内存中有不同的对象。也就是说,每个对象都有自己的地址,这意味着内存中存储了多个具有相同值的对象。这里没有引用计数,它是一个实际的对象。
Q6:介绍一下except用法和作用?
尝试…除了…除了…[其他…] [最后…]
执行try下的语句。如果出现异常,执行过程将跳转到except语句。尝试按except分支顺序执行,如果异常与except中的异常组匹配,则执行相应的语句。如果除之外的所有代码都不匹配,该异常将被传递给调用此代码的下一个顶级try代码。
成功执行try下的语句后,将执行else块代码。当异常发生时,它不会被执行。
如果有finally语句,则总是执行最后一条语句。
Q7:用Python实现打印99乘法表
foriinrange (1,10):
forjinrange(1,i 1):
print(%s*%s=%s% ) I,j,i*j),end=)
Print())
Q8:Python中dict和json格式怎么转换
#dict移动到json:
导入JSON
Dict1={ 张飞:1,刘备:2,关羽:4,赵云:3}
myJSON=JSON.dumps(DICT1))。
#json旋转d
信通技术:
mydict=json.loads(myjson)
Q9:字符串实现反转
str1= iruance
str1[:-1]
Q10: 将2个元组合并成一个字典(1个元组的值为key,另1个元组的值为value形式)
a=(“张飞”,“关羽”)
b=(66,80)
dict(zip(a,b))
Q11: 简述装饰器的作用
Decorator是一种特殊的闭包,即在闭包的基础上上传一个函数,然后覆盖原函数的执行入口。以后调用这个函数时,还可以实现一些附加功能。
进口时间
deflog(函数):
definer _ log(* args,**kw):
打印(调用:{} 。格式(func。__name__))
returnfunc(*args,**kw)
returninner_log
@日志
deftimer():
print(time.time())
Q12: 写一个冒泡排序
列表1=[2,5,8,9,3,11]
defpaixu(data,reverse=False):
ifnotreverse:
foriinrange(len(data)-1):
forjinrange(len(data)-1-i):
ifdata[j]data[j 1]:
数据[j],数据[j 1]=数据[j 1],数据[j]
返回数据
否则:
foriinrange(len(data)-1):
forjinrange(len(data)-1-i):
ifdata[j]data[j 1]:
数据[j],数据[j 1]=数据[j 1],数据[j]
返回数据
print(paixu(list1,reverse=True))
Q13: Flask与Django的区别是什么?
Flask是一个“微框架”,主要用来写小应用。但是随着Python的流行,很多大型程序也在使用Flask。同时,在Flask中,我们必须使用外部库。
Django适合大型应用程序。它提供了灵活性、完整的程序框架和快速的项目生成方法。你可以选择不同的数据库,URL结构,模板风格等。
Q14: 正则re.complie作用?
Re.compile就是把正则表达式编译成对象,加速,重用。
Q15: 有哪些提高Python运行效率的方法?
A.使用生成器,因为它可以节省大量内存;
b .优化循环代码,避免过多的重复代码执行;
C.核心模块采用Cython PyPy提高效率;
D.多进程、多线程、协同进程;
E.判断多个if elif条件,可以把最有可能发生的条件放在最前面再写,这样可以减少程序判断的次数,提高效率。
Q16:有一个列表list=[2,11,16,5,9],不用sort方法,怎么实现从小到大排序?
#用min()方法求最小值,从原列表中删除最小值,将最小值添加到新列表中,递归调用函数获取最小值,重复操作。
list=[2,11,16,5,9]
new_list=[]
def getmin(列表):
A=min(list) #获取列表的最小值
List.remove(a) #删除最小值
New_list.append(a) #将最小值添加到新列表
If (list) 0: #确保获取列表中的所有最小值并将其添加到新列表中。
get_min(列表)
返回新列表
新列表=获取最小值(列表)
打印新列表
Q17: Python中arg和*kwarg作用是什么?
当调用一个函数时,我们被允许传入多个参数,
*arg会将位置参数转换为元组。
**kwarg会将关键字参数转换成dict。
deftest(*arg,**kwarg):
ifarg:
print(arg:,arg)
伊夫堡:
print(kearg:,kwarg)
测试(你,好,key=世界)
Q18: Python面向对象的继承有什么特点?
A.支持单继承和多继承。当只有一个父类时,为单一继承,当有多个父类时,为多重继承。
B.子类将继承父类的所有属性和方法,子类也可以覆盖与父类同名的变量和方法。
C.在继承中,不会自动调用基类的construction (__init__())方法,但需要在其派生类的构造中专门调用。
D.调用基类的方法时,需要加上基类的类名前缀,需要带self参数变量。不同于在类中调用普通函数,不需要自带self参数。
Q19: 如何判断是函数还是方法?
与类和实例没有绑定关系的函数属于函数。
绑定到类和实例的函数属于方法。
普通功能:
deffunc1():
及格
打印(功能1)
类中的函数:
classPeople(对象):
deffunc2(自身):
及格
@静态方法
deffunc3():
及格
@classmethod
deffunc4(cls):
及格
人=人()
打印(people.func2)
Q20: Python会不会出现内存泄露,为什么?
当对象在相互引用时被删除,可能会导致对象无法释放,发生泄漏的情况。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。