上海金台灯-Python爬虫开发工程师

树莓派实现智能家居——支持中文的语音识别台灯 最近重新折腾我的树莓派, 阅读详情
1. 什么是lambda函数,它有什么好处?

lambda 函数是一个可以接收任意多个参数(包括可选参数)并且返回单个表达式值的函数
- lambda 函数比较轻便, 即用即仍, 很适合需要完成一项功能, 但是此功能只在此一处使用, 连名字都很随意的情况下;
- 匿名函数, 一般用来给 filter, map 这样的函数式编程服务;
- 作为回调函数, 传递给某些应用, 比如消息处理

2. 什么是Python的list and dict comprehensions,写一段代码

list and dict comprehensions 列表推导式和字典推导式
列表推导式:

In [1]: list1 = [x for x in range(10)]

In [2]: list1
Out[2]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

字典推导式:

d = {key: value for (key, value) in iterable}
3. Python里面如何实现tuple和list的转换?
可以使用内置函数直接转换
list---->tuple tuple(list)
tuple---->list list(tuple)
4. 请写出一段Python代码实现删除一个list里面的重复元素

对列表去重有四种方法,如下代码:

def func1(one_list):  
    ''''' 
    使用集合 
    '''  
    return list(set(one_list))  


def func2(one_list):  
    ''''' 
    使用字典的方式 
    '''  
    return {}.fromkeys(one_list).keys()  


def func3(one_list):  
    ''''' 
    使用列表推导的方式 
    '''  
    temp_list=[]  
    for one in one_list:  
        if one not in temp_list:  
            temp_list.append(one)  
    return temp_list  


def func4(one_list):  
    ''''' 
    使用排序的方法 
    '''  
    result_list=[]  
    temp_list=sorted(one_list)  
    i=0  
    while i<len(temp_list):  
        if temp_list[i] not in result_list:  
            result_list.append(temp_list[i])  
        else:  
            i+=1  
    return result_list  


if __name__ == '__main__':  
    AList=[1,2,3,1,2]  
    print func1(AList)  
    print func2(AList)  
    print func3(AList)  
    print func4(AList)
5. Python里面如何拷贝一个对象?

Python中的赋值、浅拷贝和深拷贝:

5.1 赋值:

在python中, 对象的赋值就是简单的对象引用, 这点和C++不同, 如下所示:

a = [1,2,"hello",['python', 'C++']]
b = a
在上述情况下, a和b是一样的, 他们指向同一片内存, b不过是a的别名, 是引用。
我们可以使用b is a 去判断, 返回True, 表明他们地址相同, 内容相同, 也可以使用id()函数来查看两个列表
的地址是否相同。
赋值操作(包括对象作为参数、 返回值)不会开辟新的内存空间, 它只是复制了对象的引用。
也就是说除了b这个名字之外, 没有其他的内存开销。
修改了a, 也就影响了b;同理, 修改了b, 也就影响了a
5.2 浅拷贝(shallow coopy):
浅拷贝会创建新对象, 其内容是原对象的引用。
浅拷贝有三种形式:切片操作、 工厂函数、 copy模块中的copy函数
比如上述的列表a
切片操作: b = a[:] 或者 b = [x for x in a]
工厂函数: b = list(a)
copy函数: b = copy.copy(a)
浅拷贝产生的列表b不再是列表a了, 使用is判断可以发现他们不是同一个对象, 使用id查看, 他们也不指向
同一片内存空间。 但是当我们使用id(x) for x in a 和 id(x) for x in b来查看a和b中元素的地址时, 可以看到二
者包含的元素的地址是相同的。
在这种情况下, 列表a和b是不同的对象, 修改列表b理论上不会影响到列表a。
但是要注意的是, 浅拷贝之所以称之为浅拷贝, 是它仅仅只拷贝了一层, 在列表a中有一个嵌套的list, 如果
我们修改了它, 情况就不一样了。
比如: a[3].append('java')。 查看列表b, 会发现列表b也发生了变化, 这是因为, 我们修改了嵌套的list, 修
改外层元素, 会修改它的引用, 让它们指向别的位置, 修改嵌套列表中的元素, 列表的地址并未发生变化,
指向的都是用一个位置。
5.3 深拷贝(Deep copy):
深拷贝只有一种形式, copy模块中的deepcopy()函数
深拷贝和浅拷贝对应, 深拷贝拷贝了对象的所有元素, 包括多层嵌套的元素。 因此, 它的时间和空间开销
要高。
同样的对列表a, 如果使用 b = copy.deepcopy(a), 再修改列表b将不会影响到列表a, 即使嵌套的列表具有
更深的层次, 也不会产生任何影响, 因为深拷贝拷贝出来的对象根本就是一个全新的对象, 不再与原来的对
象有任何的关联。
5.4 拷贝的注意点:
  • 对于非容器类型, 如数字、 字符, 以及其他的“原子”类型, 没有拷贝一说, 产生的都是原对象的引用。
  • 如果元组变量值包含原子类型对象, 即使采用了深拷贝, 也只能得到浅拷贝。
6. 写一段使用except的函数
try:
    f = open("a.txt")
    print(f.readline())
except:
    print("文件不存在")
7. Python中pass语句的作用是什么?
pass语句不会执行任何操作 ,一般作为占位符或者创建占位程序
8. 如何知道一个Python对象的类型?
使用Python的内置函数  type(变量) 来查看一个变量的类型
9. 介绍一下Python中renge()函数的用法

Python range()函数可创建一个整数列表,一般在for循环中使用
函数语法:

range(start, stop[, step])

参数说明:
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
- step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

实例:

In [6]: for x in range(10):
   ...:     print(x)
   ...:     
0
1
2
3
4
5
6
7
8
9
10. 用Python re模块匹配HTML tag的时候,<.*>和<.*?>有什么区别?
<.*>这种匹配称作贪心匹配 <.*?>称作非贪心匹配
第一种写法是,尽可能多的匹配,就是匹配到的字符串尽量长,第二中写法是尽可能少的匹配,就是匹配到的字符串尽量短。
比如<tag>tag>tag>end,第一个会匹配<tag>tag>tag>,第二个会匹配<tag>,如果要匹配到二个 >,就只能自己写了
11. Python中如何生成随机数?

在python中用于生成随机数的模块是random, 在使用前需要import. 如下例子可以酌情列举:
- random.random(): 生成一个0-1之间的随机浮点数
- random.uniform(a, b): 生成[a,b]之间的浮点数
- random.randint(a, b): 生成[a,b]之间的整数
- random.randrange(a, b, step): 在指定的集合[a,b)中, 以step为基数随机取一个数
- random.choice(sequence): 从特定序列中随机取一个元素, 这里的序列可以是字符串, 列表, 元组等

12. 如何在一个function里面设置一个全局的变量?
如果要给全局变量在一个函数里赋值, 必须使用global语句。 global VarName的表达式会告诉Python, VarName
是一个全局变量, 这样Python就不会在局部命名空间里寻找这个变量了
13. Python程序中文乱码问题怎么解决?

在Python2中默认是不支持中文的,我们可以在py文件的开头,指定编码为utf-8

# coding=utf8
14. 列出Python2和Python3的区别
  • 性能: Py3.0运行 pystone benchmark的速度比Py2.5慢30%。 Guido认为Py3.0有极大的优化空间, 在字符串
    和整型操作上可以取得很好的优化效果
  • 编码: Py3.X源码文件默认使用utf-8编码
  • 语法:
1) 去除了<>, 全部改用!=
2) 去除``, 全部改用repr()
3) 关键词加入as 和with, 还有True,False,None
4) 整型除法返回浮点数, 要得到整型结果, 请使用//
5) 加入nonlocal语句。 使用noclocal x可以直接指派外围( 非全局) 变量
6) 去除print语句, 加入print()函数实现相同的功能。 同样的还有 exec语句, 已经改为exec()函数
7) 改变了顺序操作符的行为, 例如x<y, 当x和y类型不匹配时抛出TypeError而不是返回随即的 bool值
8) 输入函数改变了, 删除了raw_input, 用input代替:
2.X:guess = int(raw_input('Enter an integer : ')) # 读取键盘输入的方法
3.X:guess = int(input('Enter an integer : '))
9) 去除元组参数解包。 不能def(a, (b, c)):pass这样定义函数了
10) 新式的8进制字变量, 相应地修改了oct()函数。
11) 增加了 2进制字面量和bin()函数
12) 扩展的可迭代解包。 在Py3.X 里, a, b, *rest = seq和 *rest, a = seq都是合法的, 只要求两点: rest是list
对象和seq是可迭代的。
13) 新的super(), 可以不再给super()传参数,
14) 新的metaclass语法:
class Foo(*bases, **kwds):
pass
15) 支持class decorator。 用法与函数decorator一样:
  • 字符和字符串:
1) 现在字符串只有str一种类型, 但它跟2.x版本的unicode几乎一样。
2) 关于字节串, 请参阅“数据类型”的第2条目

数据类型:

1) Py3.X去除了long类型, 现在只有一种整型——int, 但它的行为就像2.X版本的long
2) 新增了bytes类型, 对应于2.X版本的八位串, 定义一个bytes字面量的方法如下:
str对象和bytes对象可以使用.encode() (str -> bytes) or .decode() (bytes -> str)方法相互转化。
3) dict的.keys()、 .items 和.values()方法返回迭代器, 而之前的iterkeys()等函数都被废弃。 
同时去掉的还有 dict.has_key(), 用 in替代它吧

面向对象:

1) 引入抽象基类( Abstraact Base Classes, ABCs) 。
2) 容器类和迭代器类被ABCs化。
3) 迭代器的next()方法改名为__next__(), 并增加内置函数next(), 用以调用迭代器的__next__()方法
4) 增加了@abstractmethod和 @abstractproperty两个 decorator, 编写抽象方法( 属性) 更加方便。

异常:

1) 所以异常都从 BaseException继承, 并删除了StardardError
2) 去除了异常类的序列行为和.message属性
3) 用 raise Exception(args)代替 raise Exception, args语法
4) 捕获异常的语法改变, 引入了as关键字来标识异常实例
5) 异常链, 因为__context__在3.0a1版本中没有实现

模块变动:

1) 移除了cPickle模块, 可以使用pickle模块代替。 最终我们将会有一个透明高效的模块。
2) 移除了imageop模块
3) 移除了 audiodev, Bastion, bsddb185, exceptions, linuxaudiodev, md5, MimeWriter, mimify, popen2,
rexec, sets, sha, stringold, strop, sunaudiodev, timing和xmllib模块
4) 移除了bsddb模块(单独发布, 可以从http://www.jcea.es/programacion/pybsddb.htm获取)
5) 移除了new模块
6) os.tmpnam()和os.tmpfile()函数被移动到tmpfile模块下
7) tokenize模块现在使用bytes工作。 主要的入口点不再是generate_tokens, 而是 tokenize.tokenize()

其他:

1) xrange() 改名为range(), 要想使用range()获得一个list, 必须显式调用:
>>> list(range(10)) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2) bytes对象不能hash, 也不支持 b.lower()、 b.strip()和b.split()方法, 但对于后两者可以使用 b.strip(b’ \n\t\r \f’)和b.
split(b’ ‘)来达到相同目的
3) zip()、 map()和filter()都返回迭代器。 而apply()、 callable()、 coerce()、 execfile()、 reduce()和reload ()函数都被去
除了现在可以使用hasattr()来替换 callable(). hasattr()的语法如: hasattr(string, '__name__')
4) string.letters和相关的.lowercase和.uppercase被去除, 请改用string.ascii_letters 等
5) 如果x < y的不能比较, 抛出TypeError异常。 2.x版本是返回伪随机布尔值的
6) __getslice__系列成员被废弃。 a[i:j]根据上下文转换为a.__getitem__(slice(I, j))或 __setitem__和 __delitem__调用
7) file类被废弃
15. Python的传参是传值还是传址?

Python的参数传递有: 位置参数、 默认参数、 可变参数、 关键字参数
函数的传值到底是值传递还是引用传递, 要分情况:
不可变参数用值传递:
像整数和字符串这样的不可变对象, 是通过拷贝进行传递的, 因为你无论如何都不可能在原处改变不可变对象
可变参数是引用传递的:
比如像列表, 字典这样的对象是通过引用传递、 和C语言里面的用指针传递数组很相似, 可变对象能在函数内部改变。

16. with语句的作用,写一段代码?
with open("a.txt","w") as f:
    f.write("Hello Python")
ChatGPT提示词工程实战:从问答工具到认知协作者的范式迁移 大语言模型不是搜索引擎,而是基于概率分布的语义续写系统——它不提供确定性答案,而是生成符合上下文模式的合理表达。理解这一底层原理,是掌握提示词工程的前提。真正的提示词不是关键词堆砌,而是构建可控的语义沙盒,包含角色锚定、任务契约、约束框架与输出示例四大刚性模块。其技术价值在于将模糊的人类意图转化为模型可执行、可验证、可迭代的结构化指令,从而支撑客服话术重构、法律文书初筛、跨境电商文案生成等真实业务场景。本文聚焦2026年高信噪比工作流设计,深度融合ChatGPT提示词工程与AI增强工作流实践。 阅读详情

相关推荐

【人工智能工程】完结JEV 决策大模型实战,让 AI 从会聊天到能决策

内容概要:本文介绍了JEV决策大模型的核心理念与工程实践,强调将其作为“快判断”层从通用大模型中剥离使用。JEV不生成文本,而是针对明确的状态和问题,输出结构化、带概率的决策结果,适用于高频、原子化的判断任务。文章详细阐述了JEV的工作机制、与通用大模型的本质区别、典型应用场景(如Agent工具路由)、questions的设计方法、能力边界以及兜底机制的重要性,并指出其在成本、延迟和输出确定性方面的优势。; 适合人群:具备一定AI工程实践经验的研发人员、系统架构师,尤其是正在构建Agent、自动化决策系统或优化大模型调用链的技术团队;; 使用场景及目标:①优化高频、轻量级判断任务(如工单分类、内容初筛、RAG相关性判定)的效率与成本;②实现主模型与决策模块的职责分离,提升系统整体稳定性与可维护性;③学习如何设计高质量的判断问题与概率校准机制; 阅读建议:此资源聚焦于决策模型的工程化落地,建议结合实际业务中的判断流程进行POC验证,重点关注questions设计、阈值校准与兜底策略的构建,避免盲目神化JEV的能力。

python数据库def函数_15、python---def函数

思考一下,如果我们自动化需要写1000条脚本用例,每一条用例都需要先登录,每个登录操作都有10行代码。。。我们最初的想法是不是ctrl c,ctrl v大法???这想法很危险啊。。。。1000*10就是1W条代码了,加上其他的,不得卡死?有没有什么说,登录代码我就写一次,用一个变量接收,以后登录的我就调用那个变量就好了呢???有,那就是def函数~~~~~~~~~第一篇说到:模块由语句,函数,...

weixin_39970855的博客 258

跟着团子学SAP CO:熟练使用结果分析码实现各个场景下收入成本的匹配(一) KKA2/CJ88

PS模块中对财务顾问最难的点在于项目结算,特别是销售型的项目结算。针对客户型项目结算我列举了以下常见的收入成本匹配的一些场景: (1)在项目执行过程中会多次开票,但由于各期成本浮动很大(如前期可能只涉及一些人工、中期全是比较金额较大的材料费),所以希望开票的时候能通过合理的一些指标进行主营业务成本与主营业务收入的匹配。 (2)项目过程中会多次开票,开票确认主营业务收入时,直接将累计发生的实际成本结转为主营业务成本。 (3)项目过程中虽多次开票,但不确认收入,所有发生的实际成本月末计算为在制品,最后项目一次性

Lucas1211的博客 9536

基于51单片机的智能调光台灯

1.功能介绍 智能台灯可分成自动和手动两种模式。在自动模式下,台灯能根据环境光的亮暗与人是否被台灯所检测到(人是否在)来自动开启台灯。当人被微机检测到,环境光又达到某个程度的时候(可以设定与调节),台灯就会开启。如果环境光没有达到这个程度,台灯不会开启。当人没有被微机检测到,无论多暗,台灯也不会开。  手动模式是为了不习惯使用自动模式的人或是台灯中的微机出故障等紧急情况时用的。在手动模式下,智能台...

会飞的鱼的博客 5万+

AI 生成测试报告:从 2 小时到 10 分钟

本文分享了AI在汽车电子测试报告生成中的应用案例。作者以某车企ECU测试项目为例,对比传统报告方式(每天2小时)与AI辅助方式(每天20分钟),效率提升83%。文章详细介绍了测试报告的核心要素(测试概况、结果、问题分析、发布建议)和不同类型报告(日报、周报、总结报告)的特点,并提供了从CANoe导出测试数据的Python解析脚本示例。通过AI自动化处理,大幅减少了测试工程师在报告整理上的时间投入,为汽车电子测试工作提供了实用效率提升方案。

小明的博客 445

【OpenArm|Control】openarm机械臂ROS2仿真控制

openarm_ros2 存储库包含用于 ros2_control 的包集合。 它抽象化了硬件控制,将手臂公开为接收位置、速度和扭矩命令并输出关节状态的接口。 openarm_bringup 包提供了通过包与 ROS2 控制框架集成的启动文件。该软件包提供启动文件和配置,用于启动硬件接口、加载控制器以及将物理臂连接到 ROS2 生态系统。启动后,您可以使用标准 ROS2 控制工具和接口来命令手臂并接收反馈。openarm_bringup bringup 包支持模拟硬件(用于模拟/测试)和通过硬件插件的真实

ai领域探索者,欢迎一起交流,目前从事具身智能行业。 2959

数据分析师常见的7道面试题

1. 海量日志数据,提取出某日访问百度次数最多的那个IP。   首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中。注意到IP是32位的,最多有个2^32个IP。同样可以采用映射的方法,比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大的几个)及相应的频率。然后再在这1000个最大...

PythonCodeZ的博客 9196

第4章 本地一键部署(新手首选)

本文介绍了OpenClaw的本地部署方法,特别适合新手用户。部署过程仅需执行一条命令,通过自动脚本完成安装和配置向导。安装完成后,用户可通过终端TUI或Web控制面板验证部署是否成功。文章还提供了常见问题的排查方法,包括端口占用、权限不足、APIKey无效和安装卡顿等情况。整个部署流程简单直观,无需手动修改配置文件,适合快速搭建使用。

eastyuxiao的专栏 194

博派通达-Python爬虫开发工程师

1. 解释什么是栈溢出,在什么情况下可能出现。 栈溢出是由于C语言系列没有内置检查机制来确保复制到缓冲区的数据不得大于缓冲区的大小, 因此当这个数据足够大的时候,将会溢出缓冲区的范围。 在Python中,函数调用是通过栈(stack)这种数据结构实现的, 每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。 由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。...

PythonCodeZ的博客 1833

零基础入门simulink1000例--第112例:在 Simulink 中构建一个基本的相控阵雷达波束形成系统仿真模型

摘要:本文详细介绍了使用Simulink实现相控阵雷达波束形成技术的完整流程。从创建Simulink模型、设计天线阵列、信号生成,到波束形成算法实现和结果可视化,涵盖了关键步骤。文章重点讲解了均匀线性阵列的设计、线性调频信号生成、相位偏移计算等核心技术,并提供了MATLAB代码示例。通过Scope或ArrayPlot模块进行结果分析,最终可导出为嵌入式代码部署。该系统展现了电子扫描波束的技术优势,为雷达系统设计提供了有效的仿真方法。

amy_mhd的博客 212

撸毛笔记-电信营业厅 v5.03

电信营业厅 v5.03签到和完成部分金豆任务, 喂宠物7天,15天,28天连签抽奖, 宠物等级权益兑换自己设置电信的服务密码, 把 手机号#服务密码 填到变量里:每天运行一两次const $ = new Env("电信营业厅");

xiaoshun007的专栏 4499

智慧星光-Python爬虫工程师

1. 定义 A = ("a", "b", "c", "d"),执行del A[2]后的结果是(D) A. ("a", "b", "d") B. ("a", "b", "c") C. ("a", "c", "d") D. 异常 2. stri

PythonCodeZ的博客 1715

Android系统开发面试指南:系统Launcher岗位解析

本文针对上海礼聪Android系统开发岗位(侧重系统Launcher、充电/电池/USB底层开发)提供面试指南。内容涵盖应用开发(启动流程优化)、系统底层(充电状态机、USBOTG)、编程能力(线程安全LRU实现)、问题排查(ANR分析)及沟通协作等核心考点。通过5类典型问题及技术深度解析,帮助候选人系统准备,重点考察Framework源码理解、系统调试能力和工程思维。建议结合PowerManagerService等模块源码和systrace工具进行实践准备,同时注重技术表达与协作能力的展现。

郑伟强dev的专栏 935

360-PythonWeb工程师面试题

1、请拿出B表中的accd,(A表中和B表中的一样的数据) select * from B inner join on B.name = A.name 2、a = “abbbccc”,用正则匹配为abccc,不管有多少b,就出现一次 思路:不管有多少个b替换成一个 re.sub(r’b+’, ‘b’, a) 3、xpath使用的什么库? lxm...

PythonCodeZ的博客 1347

1、 快速掌握R:初学者的计量经济学指南

本博文旨在为初学者提供一个快速掌握R语言的指南,特别是针对计量经济学领域的应用。内容涵盖了R的基本操作、数据管理、可视化、函数编写以及高级统计分析方法,如OLS回归、异方差修正和集群标准误差计算等。通过实际示例和详细说明,帮助读者在数据分析和科学研究中更加得心应手。

weixin_35734408的博客 151

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

文因互联-PythonWeb开发工程师

请列举Python2与Python的区别,请将下面的Python2的代码转换成Python3。 代码: class Point: def __init__(self, x, y): self.x = x self.y = y def __str__(self): return '({}, {})'.format(self....

PythonCodeZ的博客 973

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

金桔小店-PythonWeb开发工程师

1. 有如下一段代码:(类继承) class A(object): def show(self): print 'base show' class B(A): def show(self): print 'derived show' obj = B() obj.show() 如何调用类A的show方法? obj.__class__ ...

PythonCodeZ的博客 945

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Python内置方法的时间复杂度

Python内置方法的时间复杂度 本文转载自:http://www.orangecube.net/python-time-complexity 本页面涵盖了Python中若干方法的时间复杂度(或者叫“大欧”,“Big O”)。该时间复杂度的计算基于当前(译注:至少是2011年之前)的CPython实现。其他Python的实现(包括老版本或者尚在开发的CPython实现)可能会在性能表现上有些许...

PythonCodeZ的博客 916

妙计面试题

Python主要的内置数据类型有哪些? python主要的内置数据类型有:str,int,float,tuple,list,dict,set print(dir(‘a’))输出的是什么? 会打印出字符型的所有的内置方法 ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '_...

PythonCodeZ的博客 809

芸品绿-PythonWeb开发工程师

1.Python常用的数据结构的类型及其特性? 数值类型: 整数(int): 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。 浮点型(float): 浮点型由整数部分与小数部分组成 复数((complex)):复数由实数部分和虚数部分构成,可以用a + bj...

PythonCodeZ的博客 790

北京红枣科技-PythonWeb工程师

1.__new__和__init__的区别? __new__是一个静态方法,而__init__是一个实例方法. __new__方法会返回一个创建的实例,而__init__什么都不返回. 只有在__new__返回一个cls的实例时后面的__init__才能被调用. 当创建一个新实例时调用__new__,初始化一个实例时用__init__. 2. read和readline以及readli...

PythonCodeZ的博客 585

北京号外科技-Python爬虫工程师

1. 单引号、双引号、三引号的区别? 这几个符号都是可以表示字符串的,如果是表示一行,则用单引号或者双引号表示,它们的区别是: 如果内容里有”符号,并且你用双引号表示的话则需要转义字符,而单引号则不需要。 三单引号和三双引号也是表示字符串,并且可以表示多行,遵循的是所见即所得的原则。 另外,三双引号和三单引号可以作为多行注释来用,单行注释用#号。 2. 如何在一个 function ...

PythonCodeZ的博客 549

普奥云-Python爬虫工程师

1. Python语言中map函数返回类型是什么? 在Python2中,map函数返回列表。 在Python3中,map函数返回迭代器。 2. 请给出以下代码运行结果 import re pattern = re.compile(r"(\w+)\s(\w+)") s = "hello 123,hello 456,byebye789" m = pattern.sub(r"hell...

PythonCodeZ的博客 473

北京诺信创联-Python爬虫工程师

1. 下面两段代码的输出是什么? 第一段代码: a = 1 def fun(a): a = 2 fun(a) print(a) 输出结果: 1 第二段代码: a = [] def fun(a): a.append(1) fun(a) print(a) 输出结果: [1] 2. 写一个装饰器 def singleton(cls, *a...

PythonCodeZ的博客 443

TCP中的三次握手和四次挥手

TCP中的三次握手和四次挥手 三次握手 TCP的链接建立是一个三次握手的过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行,主要步骤如下: 客户端将标志位设置为1,即SYN = 1,并随机产生一个连接序号seq的值,即seq = j,并将该数据包发送给Server(服务器端) Server(服务器端)收到数据包之后由标志位 SYN = 1知道Client请求建立连接,Se...

PythonCodeZ的博客 368
上一篇: 数据分析师常见的7道面试题
下一篇: 博派通达-Python爬虫开发工程师
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值