python面试题(1)

本文列举了多个Python面试中常见的问题,包括计算1-100的和、删除文件、修改全局变量、map和lambda的使用、*的含义、字典操作、正则表达式应用等,并给出了详细解答。此外,还探讨了Python中列表去重和正则表达式在字符串处理中的应用。

python面试题(1)

#  1、写一段代码,输出1-100的和

sum=0
for x in range(0,101):
    sum+=x
print(sum)

#  2、如何用python删除 一个文件

import os
os.remove('文件名')

#  3、如何在一个函数内修改全局变量

函数内使用 global ‘变量名‘,然后就可以在函数内改变该全局变量

#  4、举例说明map和lambda用法

map:

l1=[1,2,3,4]
def fun(l):
    return l+1
print(list(map(fun,l1)))

输出:[2,3,4,5]

lambda:(lambde为匿名函数,有时候不能在语句中命名函数,这时候就需要用到匿名函数,因此匿名函数又可以看做一个表达式)

g=lambda x:x+2
print(g(2))

输出:4

map函数和lambde函数可以结合使用,例如:

l1=[1,2,3,4]
print(list(map(lambda x:x+1,l1)))
输出:[2,3,4,5]

#  5、解释*代表什么含义

 def fun(*args,**kwargs);

def fun(*a,**b): #第一个参数表示一个元祖,第二个参数表示一个dict字典
    print(a)
    print(b)
    print('********')#结束
fun(1,2,3)
fun(a=1,b=2,c=3)
fun(1,2,3,a=1,b=2,c=3)
fun(1,'a','aa','aaa',a=1,b=2,c=3,d=4)
>>>>>>
(1, 2, 3)
{}
********
()
{'b': 2, 'a': 1, 'c': 3}
********
(1, 2, 3)
{'b': 2, 'a': 1, 'c': 3}
********
(1, 'a', 'aa', 'aaa')
{'b': 2, 'a': 1, 'd': 4, 'c': 3}
********

_r,*r,_=range(100);

_r,*r,_=range(100);
print(_r)#输出0
print(*r)#输出0-98
print(_)#输出99

  fun(*a);

l=[1,2,3,4]#列表
print(*l)#将列表内的元素拆开输出,即去掉分隔符号‘,’,因此输出 1 2 3 4
def fun(x,y,z,i):
    return x*y*z*i
print(fun(*l))  #输出24
#接下来理解fun(*a)
def fun(*a):
    return  a
print(fun(1,2,3,4))#输出了(1,2,3,4),在输入参数中加入了位置间隔符号

 fun(a,**b);

def fun(a,**b):
    print(a)
    print(b)
fun(1,b=2,c=3,d=4)
>>>
1
{'c': 3, 'd': 4, 'b': 2}

fun(a**b);

不知道。。。望高手解答!!多谢

#  6、哪些类型的数据可以作为字典的键?值呢?如何删除一个字典的键值对?

字典键不能为列表、字典,但可为元祖、数字、字符串;(字典的键必须为不可变量)

字典的值可以为数字、字符串、元组、字典、列表等

增加键值对/删除键值对:a['d']='example'/del a['d']

#  7、正则匹配在单引号或者双引号中任意文本的方法

????不解???

#  8、mysql中数据的去重


#  9、写出一个装饰器例子
#  10、描述下SOAP的交互流程和实现原理,列举Python中用过的插件
#  11、[1,2,[3,[4,5]],[6],[7,[8,9]]]展开为[1,2,3,4,5,6,7,8,9]
#  12、简述__new__和__init__方法的区别
#  13、with函数可以打开文件,而不用手动写close()函数,简述with方法原理
#  14、简述map(),filter(),zip(),lambda的作用和用法
#  15、msg = "192.168.17.25/com/http://www.baidu.com",用正则匹配ip地址
#  16、一行代码实现1-10的和
#  17、3,7,15.。。。63,127少了哪几个数?
#  18、python内建的数据类型

#  19、"ajldjlajfdljfddd"  去重后从大到小排列

s='ajldjlajfdljfddd'
s=sorted(set(s))
print(s)
>>>>
['a', 'd', 'f', 'j', 'l']

#  20、range和xrange区别

在python3中取消了xrange这个函数,而留下的range其实就是之前的xrange

因为在之前的版本中,xrange不直接列举数据,因此占用内存少

因此在python3中,range(0,5)不直接开辟很大的内存,要生成列表可以用list(range(0,5))

#  21、Python中怎么简单的实现列表去重

l=[1,1,2,3,4,4,4]
print(set(l))
l=list(set(l))
print(l)
>>>>
{1, 2, 3, 4}#集合
[1, 2, 3, 4]#列表

#  22、一句话解释什么类型的语言能够用装饰器?

#  23、谈下Python的GIL
#  24、数据库优化方式举例,并简单说原理
#  25、字典如何删除键和合并两个字典
#  26、列出python中的可变数据类型和不可变数据类型、
#  27、列出5个python标准库
#  28、列出10个Linux常用命令
#  29、列出5个数据库操作命令

#  30、["广州 not found 14", "北京 14 net"],用正则表达式去除列表里面的数字和英文,输出["广州","北京"]

关于正则表达式可以参考:

正则表达式学习




内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值